次のコマンドを使用して、pscpを使用して仮想Ubuntuサーバーにファイルを転送しています。
pscp test.php user@server:/var/www/test.php
エラー許可が拒否されました。/home/user /フォルダーに転送しようとしても問題ありません。
これは、私が使用しているユーザーが/ var/www /フォルダーへのアクセス権を持っていないことに関係していると思います。 SSHを使用するときは、Sudoを使用して/ var/www /パスにアクセスする必要があります。
/ var/www /パスにアクセスし、実際にこのフォルダーにファイルを転送できるように、pscpがサーバーに「Sudo」で転送するように指定することはできますか?
サーバーを所有している場合:
Www-dataグループに自分を追加します。
Sudo usermod -a -G www-data <username>
そして、適切な権限を設定します。
Sudo chown -R www-data:www-data /var/www/
Sudo chmod -R 0775 /var/www/
これでうまくいくはずです。
次のことに注意してください。
Sudo usermod -G www-data <username>
オプション-Gは、指定されたユーザー()を指定された特定のグループのメンバーにします。したがって、上記のステートメントはユーザーをグループwww-dataの一部にしますが、ユーザーが属する他のグループからユーザーを削除します。これを回避するには、オプション-aを追加するか、ユーザーを含める現在のすべてのグループを指定する必要があります。これを知らなかったので、誤ってユーザー「administrator」をSudoグループから削除しました。したがって、指定したユーザーに現在のグループメンバーシップを保持させたい場合は、次のコマンドを記述します。
Sudo usermod -G -a www-data <username>
Usermodコマンドの詳細については、次のURLにアクセスしてください。
同じエラーが発生しました「pscp:YourFilePathを開けません:権限が拒否されました」、
上書きしようとしているファイルの所有権を確認してください。上書きできない場合は、このエラーが発生します。
リモートファイルを制御できない場合は、移動しようとしているファイルの名前を変更してください。