我有一个家庭服务器,它使用 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,并且复制文件应该不会有问题,但显然我误解了一些东西,任何帮助都值得感激。
答案1
NFS 中的“安全”措施之一是rootsquash
默认选项。使用rootsquash
,客户端系统上的 root 具有与用户相同的权限nobody
(或根据具体配置分配的其他无权帐户)。因此,sudo
在 NFS 上使用实际上削弱您的访问权限。因此,不要sudo
在 NFS 上使用。请正确设置您的权限。