回答:
コマンドは、新しいドキュメントをマシンのルート(/
)に配置しようとしています。あなたがしたいのは、あなたのホームディレクトリにそれらを転送することです(あなたには書き込み権限がないため/
)。自宅へのパスが/home/erez
次のようなものである場合:
scp My_file.txt user_id@server:/home/erez/
ホームディレクトリへのパスをショートカット~/
で置き換えることができるため、次の場合も同じ効果があります。
scp My_file.txt user_id@server:~/
リモート側でパスを完全に省くこともできます。これはホームディレクトリを意味します。
scp My_file.txt user_id@server:
つまり、ファイルをデスクトップにコピーするには、次の場所に転送する必要があります/home/erez/Desktop/
。
scp My_file.txt user_id@server:/home/erez/Desktop/
またはショートカットを使用して:
scp My_file.txt user_id@server:~/Desktop/
または、リモート側の相対パスを使用します。これは、ホームディレクトリを基準として解釈されます。
scp My_file.txt user_id@server:Desktop/
@ckhanが既に述べたように、引数も交換する必要があります。
scp FROM TO
そのMy_file.txt
ため、サーバーuser_id@server
からデスクトップにファイルをコピーする場合は、次を試してください。
scp user_id@server:/path/to/My_file.txt ~/Desktop/
ファイルMy_file.txt
がサーバーのホームディレクトリにある場合は、ショートカットを再度使用できます。
scp user_id@server:~/My_file.txt ~/Desktop/
~
、リモートホストで評価されるように、評価から保護する必要があります\~
。
同じエラーが発生したため、「scpを使用したファイルの転送:許可が拒否されました」のためにここに来ました。
私の場合、scpでダウンロードしたファイルは、rootが所有するファイルを上書きしていたので、私はrootでした。つまり、上書きされるファイルの所有権を確認します。
/Home
とルートされていない、彼は書き込みアクセスの外を持っていない~/
これは許可の問題のようです
ファイルはソースアカウントとして宛先サーバーに配信されるため、読み取り権限がない場合があります。
ソースのファイルに必要な権限、特に読み取り権限があることを確認する必要があります
-rw-r--r--
chmod 744
次に、ファイルを宛先にコピーします。これは解決されます
-rw-r--r--
744ではなく644です。実際に実行可能ではないファイルに実行許可を設定すると、問題が発生する可能性があります。
どのような固定、リモートサーバー上で、ルートにフォルダの所有権を変更して私のために、「許可することは拒否されました」:(root以外のユーザーにファイルを送信すると、ディレクトリがルートによって所有されている場合に発生することがあります!) でリモートマシン(コピー先):
sudo chown (your username) (remote folder)
また、確認のために、リモートフォルダーのすべてのアクセス許可を有効にします(常に必要なわけではありません):
sudo chmod 777 (remote folder)
Permisssion Deniedは、サーバーのルートではないことを意味します。そこにアカウントを持っているだけです。その場合、これを行う必要があります:
sudo scp -r /path2yourFolder/ username@server_Ip:/home/username
これにより、サーバー上のホームディレクトリにコピーされます。
これも機能します:
scp -r /path2yourFolder/ username@server_Ip:~/
www.mremoteng.org/からWindowsツール「mRemoteG」をインストールします
目的のボックスへのSSH接続を作成します。
[ファイルの転送]メニューをクリックします。
WindowsからLinuxにファイルを簡単に転送できます。
ありがとう。
私の場合、-Rを使用してフォルダーにすべてのアクセス許可を付与しようとしましたが、それでもアクセス許可に関するエラーが発生しました。
ターゲットサーバーとフォルダーのパスの前に「/」を削除する必要がありました。その理由は、ダウンロードがサーバーにsshした後にリストできる最初のフォルダーであるためです。たとえば、ssh tiennsloit@13.76.91.2
これは動作します:
sudo scp -rp /Users/macintosh.vn/Downloads/bbhs_20190301.zip tiennsloit@13.76.91.2:Downloads
これは機能していませんでした:
sudo scp -rp /Users/macintosh.vn/Downloads/bbhs_20190301.zip tiennsloit@13.76.91.2:/ Downloads
簡単な修正。あなたがrootであることを確認してください。SCPをリモートに送信すると、そのマシンのルートパスワードが要求されます。この問題が解決策でした。それらをルート化します。
scp My_file.txt user_id@server:
にコピーする場合は、ユーザーのホームフォルダーにコピーします。