96

VPN経由でSSHを使用して、ローカルファイル「magento.tar.gz」をローカルマシンからリモートサーバーにコピーしようとしています。これは、ここでxx.xxxxとして使用した仮想マシンの内部IPに接続しています。

SSHアカウントで完全な「sudo」アクセス権を持っているので、コピーに問題はありません。私は以下を試しました:

私は次のことを試しました(magento.tar.gzファイルはすでにローカルルートディレクトリにあります)

sudo scp magento.tar.gz user@xx.x.x.xx/var/www/

これにより、ローカルパスワードを入力するように求められます。その後戻りますcp: user@xx.x.x.xx/var/www: Not a directory

sudo scp /Users/myname/magento.tar.gz user@xx.x.x.xx/var/www/

同じを返します。

どこかにSSHを含める必要がありますか?

最初にSSH経由でサイトに接続する必要がありますか?

補足:SSH経由でサーバーに接続し、ディレクトリを参照してフォルダを作成し、sudo mkdiretcを使用して削除したので、確実に権限があります。

4

3 に答える 3

211

:最初に、パスが次のとおりであることを示すために、IP アドレスの後に追加する必要があります。

scp magento.tar.gz user@xx.x.x.xx:/var/www

sudoする必要はないと思いますscp。この場合、リモート マシンには影響せず、ローカル コマンドのみに影響します。

次に、user@xx.xxxx に書き込みアクセス権がない/var/www場合は、2 回実行する必要があります。

ホーム フォルダー内のリモート サーバーにコピーします (:リモート ホーム フォルダーを表し、:subfolder/必要に応じて使用するか:/home/user/、フル パスに使用します):

scp magento.tar.gz user@xx.x.x.xx:

次に、SSH でファイルを移動します。

ssh user@xx.x.x.xx
sudo mv magento.tar.gz /var/www
于 2012-08-06T03:26:06.113 に答える
19

JScoobyCed の回答を明確にするために、scp コマンドは、管理者権限が必要なディレクトリにファイルをコピーできません。ただし、scp コマンドを使用して、リモート ユーザーに属するディレクトリにコピーできます。

そのため、root 権限が必要なディレクトリにコピーするには、まず scp コマンドを使用して、そのファイルをリモート ユーザーに属するディレクトリにコピーする必要があります。次に、ssh を使用してリモート アカウントにログインする必要があります。ログインしたら、sudo mv コマンドを使用して、選択したディレクトリにファイルを移動できます。要するに、使用するコマンドは次のとおりです。

scp を使用して、ファイルをリモート ユーザーのアカウントのディレクトリ (Documents ディレクトリなど) にコピーします。

scp /path/to/your/local/file remoteUser@some_address:/home/remoteUser/Documents

次に、ssh を使用してリモート ユーザーのアカウントにログインし、sudo を使用して制限付きディレクトリにファイルを移動します。

ssh remoteUser@some_address
sudo mv /home/remoteUser/Documents/file /var/www
于 2014-12-29T17:21:32.870 に答える