web-dev-qa-db-ja.com

pscpの使用とアクセス許可の拒否

次のコマンドを使用して、pscpを使用して仮想Ubuntuサーバーにファイルを転送しています。

pscp test.php user@server:/var/www/test.php

エラー許可が拒否されました。/home/user /フォルダーに転送しようとしても問題ありません。

これは、私が使用しているユーザーが/ var/www /フォルダーへのアクセス権を持っていないことに関係していると思います。 SSHを使用するときは、Sudoを使用して/ var/www /パスにアクセスする必要があります。

/ var/www /パスにアクセスし、実際にこのフォルダーにファイルを転送できるように、pscpがサーバーに「Sudo」で転送するように指定することはできますか?

20
Espen

サーバーを所有している場合:

Www-dataグループに自分を追加します。

Sudo usermod -a -G www-data <username>

そして、適切な権限を設定します。

Sudo chown -R www-data:www-data /var/www/
Sudo chmod -R 0775 /var/www/

これでうまくいくはずです。

13
RoelAdriaans

次のことに注意してください。

Sudo usermod -G www-data <username>

オプション-Gは、指定されたユーザー()を指定された特定のグループのメンバーにします。したがって、上記のステートメントはユーザーをグループwww-dataの一部にしますが、ユーザーが属する他のグループからユーザーを削除します。これを回避するには、オプション-aを追加するか、ユーザーを含める現在のすべてのグループを指定する必要があります。これを知らなかったので、誤ってユーザー「administrator」をSudoグループから削除しました。したがって、指定したユーザーに現在のグループメンバーシップを保持させたい場合は、次のコマンドを記述します。

Sudo usermod -G -a www-data <username>

Usermodコマンドの詳細については、次のURLにアクセスしてください。

buntuマンページ-usermod

8
dejris

同じエラーが発生しました「pscp:YourFilePathを開けません:権限が拒否されました」、

上書きしようとしているファイルの所有権を確認してください。上書きできない場合は、このエラーが発生します。

リモートファイルを制御できない場合は、移動しようとしているファイルの名前を変更してください。

1
Qusai Sabri