web-dev-qa-db-fra.com

Erreur lors de l'utilisation de la commande scp "bash: scp: commande introuvable"

Je souhaite utiliser la commande scp pour copier un fichier local sur un serveur distant, mais je reçois un message d'erreur après avoir saisi le mot de passe de l'utilisateur sur le serveur distant.

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

J'ai vérifié sur le serveur en utilisant l'utilisateur git et il semble que la commande scp puisse être trouvée et openssh-clinets ont également été installés.

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.

Je suis confus pour la situation. Ai-je oublié une configuration sur le serveur? (Nous utilisons RHEL6 comme serveur.)


C'est ma faute dans la configuration du chemin. J'ai ajouté 'custom.sh' dans /etc/profile.d et ajouté les lignes suivantes pour ajouter le répertoire/usr/local/node/bin à PATH.

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

Mais le format est faux. J'ai enlevé la paire de '"' et ça marche maintenant. Ça devrait être:

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

Une erreur de sonde ... ^ _ ^

51
Rivers Yang

Assurez-vous que la commande scp est disponible des deux côtés - à la fois sur le client et sur le serveur.

S'il s'agit de Fedora ou Red Hat Enterprise Linux et de clones (CentOS), assurez-vous que ce package est installé:

    yum -y install openssh-clients

Si vous travaillez avec Debian ou bunt et des clones, installez ce paquet:

    apt-get install openssh-client

Encore une fois, vous devez le faire à la fois sur le serveur et sur le client, sinon vous risquez de rencontrer des messages d'erreur "étranges" sur votre client: scp: command not found ou similaire bien que vous l’ayez localement. Cela a déjà dérouté des milliers de personnes, je suppose :)

96
lzap

Vérifiez si scp est installé ou non à partir de vous voulez copier le contrôle en utilisant which scp

S'il est déjà installé, il vous imprimera un chemin tel que /usr/bin/scp Sinon, installez scp en utilisant:

yum -y install openssh-clients

Puis copier la commande

scp -r [email protected]:/var/www/html/database_backup/restore_fullbackup/backup_20140308-023002.sql  /var/www/html/db_bkp/
4
Sanjay eduteks

Le problème est avec le serveur distant, pouvez-vous vous connecter au serveur distant et vérifier si "scp" fonctionne

causes probables: - scp n'est pas dans le chemin - le client openssh n'est pas installé correctement

pour plus de détails http://www.linuxquestions.org/questions/linux-newbie-8/bash-scp-command-not-found-920513/

3
Mehul Rathod