68

scp コマンドを使用してローカル ファイルをリモート サーバーにコピーしたいのですが、リモート サーバーでユーザーのパスワードを入力するとエラー メッセージが表示されます。

~]$ scp gitadmin.pub git@123.150.207.18:
git@123.150.207.18's password: 
bash: scp: command not found
lost connection

git ユーザーを使用してサーバーをチェックしたところ、scp コマンドが見つかり、openssh-clinets もインストールされているようです。

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.

状況に困惑しています。サーバーの構成が不足していませんか? (サーバーはRHEL6を使用しています。)


パス設定の私のせいです。/etc/profile.d に「custom.sh」を追加し、次の行を追加して、/usr/local/node/bin ディレクトリを PATH に追加しました。

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

しかし、フォーマットが間違っています。'"' のペアを削除したところ、問題なく動作するようになりました。次のようになります。

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

プローブミス...^_^

4

3 に答える 3

125

scp コマンドがクライアントとサーバーの両方で使用できることを確認してください。

これがFedoraまたはRed Hat Enterprise Linuxおよびクローン (CentOS) の場合は、このパッケージがインストールされていることを確認してください。

    yum -y install openssh-clients

DebianまたはUbuntuとクローンを使用している場合は、次のパッケージをインストールします。

    apt-get install openssh-client

繰り返しますが、サーバーとクライアントの両方でこれを行う必要があります。そうしないと、クライアントで「奇妙な」エラー メッセージが表示される可能性がscp: command not foundあります。これはすでに何千人もの人々を混乱させたと思います:)

于 2013-11-27T12:10:32.547 に答える
5

を使用してチェックをコピーしたい場所scpからインストールされているかどうかを確認しますwhich scp

すでにインストールされている場合は、Else のようなパスが表示されます。/usr/bin/scp 次を使用して scp をインストールします。

yum -y install openssh-clients

次に、コマンドをコピーします

scp -r root@192.168.1.1:/var/www/html/database_backup/restore_fullbackup/backup_20140308-023002.sql  /var/www/html/db_bkp/
于 2014-03-09T06:05:22.610 に答える
5

問題はリモート サーバーにあります。リモート サーバーにログインして、「scp」が機能するかどうかを確認できますか

考えられる原因: - scp がパスにない - openssh クライアントが正しくインストールされていない

詳細についてはhttp://www.linuxquestions.org/questions/linux-newbie-8/bash-scp-command-not-found-920513/

于 2013-06-16T07:20:50.673 に答える