NFSを使用してネットワーク上のフォルダーを共有しているホームサーバーがあります。
たとえば、これらのフォルダーをコンピューターにマウントしました。
192.168.1.20:/mnt/raiddisk/john /mnt/john nfs auto,defaults 0 0
ホームフォルダーをリモートマシンにコピーするために、次のrsyncコマンドを実行しようとしています。
Sudo rsync -azv -h --progress /home/john/ /mnt/john/backups/manual/20150806/ --log-file=/home/john/manual_backup.log
しかし、私はこのようなエラーを受け取り、何もコピーされません:
rsync: failed to set times on "/mnt/john/backups/manual/20150806/.":
Permission denied (13) rsync: recv_generator: mkdir
"/mnt/john/backups/manual/20150806/.Skype" failed: Permission denied
(13)
* Skipping any contents from this failed directory *
マウントされたフォルダーのアクセス許可は次のとおりです。
drwxr-xr-x 10 root root 4096 Aug 2 21:32 mnt
drwxrwxr-x 4 john john 4096 Dez 24 2014 john
drwxrwxr-x 4 john john 4096 Dez 14 2014 backups
drwxrwxr-x 6 john john 4096 Aug 6 20:41 manual
drwxrwxr-x 2 john john 4096 Aug 6 20:41 20150806
Sudo
を使用することで、root権限でrsyncを実行し、ファイルのコピーに問題はないはずだと思いましたが、明らかに誤解していることがあると思います。
NFSの「セキュリティ」対策の1つは、rootsquash
がデフォルトオプションです。 rootsquash
を使用すると、クライアントシステムのルートは、nobody
ユーザー(または、正確な構成に応じて割り当てられた他の無力なアカウント)と同じ特権を持ちます。したがって、NFSでSudo
を使用すると、実際にはweakensのアクセス権限が得られます。したがって、NFSではSudo
を使用しないでください。許可を適切に設定します。