我们设置了 Netgear ReadyNAS 316 来替换已死的旧 ReadyNAS Ultra 6,但我们无法像在 Ultra 6 上那样获得权限。
基本上,我们使用 NAS 从我们的网络服务器备份许多 TB 的大型音频文件。它们由 Apache 访问,所有者为 www-data,组为 www-data。我们希望能够将文件从网络服务器 RSync 到 ReadyNAS,并保留所有文件的 www-data 所有者和组。
作为参考,我们使用的 RSync 命令是:
rsync -avr --progress /webfolder/ /media/netgear02/RSyncTest/
我使用以下命令在我们的 Ubuntu 12.04 服务器上安装了 NAS 共享:
mount 192.168.5.10:/Netgear02/media /media/netgear02
但是(我们的Ubuntu服务器的)文件夹ls -al
中的一个/media
显示权限没有正确“读取”(?):
drwxrwxrwx 1 nobody nogroup 494 Jul 17 14:39 netgear02
我在 ReadyNAS 上启用了 SSH 并以 root 身份登录以查看发生了什么,并检查/Netgear02/media
文件夹的权限,它们是:
drwxrwxrwx+ 1 root root 494 Jul 17 14:39 media
所以所有者和组实际上是root,但是在安装时它没有获得“正确”的权限。
在我们的旧 Ultra 6 上,我们所要做的就是添加no_root_squash
并/etc/exports
运行exportfs -ra
,然后我们就离开了,但它似乎对这个新的 OS 6 软件 ReadyNAS 没有影响。
NFS 共享设置中有一个用于“root 访问”的复选框,我认为它可能会解决它。
当我选中该框并单击应用时,似乎只是将 /etc/exports 修改为以下内容:
"/homes" *(insecure,insecure_locks,root_squash,anongid=99,anonuid=99,no_subtree_check,rw,sync)
"/run/nfs4" *(ro,sync,insecure,insecure_locks,root_squash,anongid=99,anonuid=99,no_subtree_check,fsid=0)
"/run/nfs4/Netgear02" *(ro,sync,insecure,insecure_locks,root_squash,anongid=99,anonuid=99,no_subtree_check,fsid=16368026699721582927)
"/run/nfs4/Netgear02/media" 192.168.5.9(insecure,insecure_locks,no_subtree_check,rw,no_root_squash)
"/Netgear02/media" 192.168.5.9(insecure,insecure_locks,no_subtree_check,rw,no_root_squash)
这些似乎都没有任何效果,我卸载/重新安装了共享,它仍然被安装为nobody:nogroup。
很抱歉这个冗长的问题!只是在寻找任何想法!
编辑- 忘了说,当我尝试并实际使用 RSync 文件时,无论没有任何人:nogroup,我都会收到所有这些消息,每个文件都有一个消息:
rsync: chown "/media/netgear02/RSyncTest/test.log" failed: Invalid argument (22)
原来这是因为 NAS 和服务器上的域不同!
hostname -d
在 ReadyNAS 上返回空白,hostname -d
在 Ubuntu 服务器上返回mshome.net
。我改变了它:
nano /etc/hosts
并更新:
127.0.1.1 testserver.mshome.net testserver
至
127.0.1.1 testserver
重新启动:
shutdown -r now
一切都开始按预期工作(我想我也可能重新安装了共享,但不是 100%)!