Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Error when using scp command "bash: scp: command not found" [closed]

Tags:

scp

openssh

rhel

I want to use scp command to copy a local file to remote server, but I get an error message after input the password of user in remote server.

~]$ scp gitadmin.pub [email protected]: [email protected]'s password:  bash: scp: command not found lost connection 

I checked on server using the git user and it seems the scp command can be found and openssh-clinets were installed too.

git@... ~]$ scp usage: scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file]            [-l limit] [-o ssh_option] [-P port] [-S program]            [[user@]host1:]file1 ... [[user@]host2:]file2 git@... ~]$ su root ...... root@... ~]# yum info openssh-clients Loaded plugins: product-id, subscription-manager Updating Red Hat repositories. Installed Packages Name        : openssh-clients Arch        : x86_64 Version     : 5.3p1 Release     : 52.el6 Size        : 1.0 M Repo        : installed From repo   : anaconda-RedHatEnterpriseLinux-201105101844.x86_64 Summary     : An open source SSH client applications URL         : http://www.openssh.com/portable.html License     : BSD Description : OpenSSH is a free version of SSH (Secure SHell), a program for             : logging into and executing commands on a remote machine. This             : package includes the clients necessary to make encrypted             : connections to SSH servers. 

I'm confused for the situation. Did I missing some configuration on server? (We are using RHEL6 as server.)


It's my fault in path setting. I added 'custom.sh' in /etc/profile.d and added following lines in it to add /usr/local/node/bin directory to PATH.

export PATH="/usr/local/node/bin:$PATH"  

But the format is wrong. I removed the pair of '"' and it works OK now. It should be:

export PATH=$PATH:/usr/local/node/bin 

A probe mistake...^_^

like image 271
Rivers Yang Avatar asked Jun 16 '13 07:06

Rivers Yang


People also ask

Why SCP command is not working?

When SCP tries to SSH into your server, if you don't have a part of your . bashrc file that allows non-interactive connections, it will attempt to echo out any commands you have load at the initial connection of your SSH session. This commands that echo their output unfortunately break SCP.

How do I know if SCP is enabled Linux?

Use the command which scp . It lets you know whether the command is available and it's path as well. If scp is not available, nothing is returned.

What is the SCP command in bash?

scp (secure copy) command in Linux system is used to copy file(s) between servers in a secure way. The SCP command or secure copy allows secure transferring of files in between the local host and the remote host or between two remote hosts.


2 Answers

Make sure the scp command is available on both sides - both on the client and on the server.

If this is Fedora or Red Hat Enterprise Linux and clones (CentOS), make sure this package is installed:

    yum -y install openssh-clients 

If you work with Debian or Ubuntu and clones, install this package:

    apt-get install openssh-client 

Again, you need to do this both on the server and the client, otherwise you can encounter "weird" error messages on your client: scp: command not found or similar although you have it locally. This already confused thousands of people, I guess :)

like image 130
lzap Avatar answered Sep 20 '22 14:09

lzap


Issue is with remote server, can you login to the remote server and check if "scp" works

probable causes: - scp is not in path - openssh client not installed correctly

for more details http://www.linuxquestions.org/questions/linux-newbie-8/bash-scp-command-not-found-920513/

like image 30
Mehul Rathod Avatar answered Sep 16 '22 14:09

Mehul Rathod