好的,我对这个东西很困惑,所以非常感谢描述性的答案,特别是如果他们让整个安装的东西变得不那么神奇,更容易预测的话。
我正在尝试使用nfs挂载我的Drobo-FS NAS,以获得比使用cifs更好的性能。
drobo正在运行一些精简的linux发行版。
在客户机上的/etc/fstab内(Ubuntu,IP: 192.168.1.150)
# Mount Drobo
192.168.1.100:/mnt/DroboFS/Shares/public /media/drobonfs nfs rw,soft,proto=tcp,users 0 0我已经在drobo上安装了unfsd,并通过ssh访问。这是服务器计算机上的导出文件( IP为192.168.1.100的Drobo-FS):
# Allow access for client machine
/mnt/DroboFS/Shares 192.168.1.150(rw,no_root_squash)挂载工作正常,只是挂载的文件都归root所有,并且大多数文件权限都设置为744。客户端上装载中显示的文件权限与服务器上的实际权限相匹配。例如:
client$ sudo chmod 123 /media/drobonfs/somefile
client$ ls -l /media/drobonfs/somefile
---x-w--wx 1 root root 0 2012-01-04 14:15 /media/drobonfs/somefile
drobo$ ls -l /mnt/DroboFS/Shares/public/somefile
---x-w--wx 1 root root 0 Jan 4 14:15 /mnt/DroboFS/Shares/public/somefile在每个命令前面编写sudo很麻烦,我想知道是怎么回事,那么在将所有者/组设置为我的帐户而不是root的情况下,我应该怎么做才能将其挂载到客户机上?
发布于 2015-01-05 03:27:24
装载共享时,主机系统的userID (UID)将映射到客户端的userID (UID)上。
在客户端上,映射的用户(基于userID)将成为已装载共享的所有者。
您的问题是因为主机使用了其他UID,而不是客户端。
您可以通过定义/etc/nfs.map文件来解决此问题:
/etc/nfs.map
这看起来像这样:
# remote local gid 500 1000 # drobo client uid 500 2003 # drobo client
因此,在使用NFS时,您需要确保主机和客户端上的用户之间存在UID/GID匹配。请同时阅读下面的文章:http://www.kernelcrash.com/blog/nfs-uidgid-mapping/2007/09/10/
解决此问题的另一个好方法是通过查看主机和客户机系统上的/etc/passwd文件来查看这两个系统上的UID。
或键入以下命令:
id tom使用以下命令更改UID:
usermod -u 10000 tom祝好运!
发布于 2012-01-05 09:35:25
这似乎可以在Drobo上的导出中起作用:
/mnt/DroboFS/Shares 192.168.1.150(rw,all_squash,anonuid=NNN)其中NNN是您在客户端上的数字用户id。
发布于 2014-01-14 20:42:46
将/etc/exports更改为:
/mnt/DroboFS/Shares 192.168.1.150(rw,insecure)然后,在NFS服务器上运行:
$ sudo exportfs -a现在,当您在NFS客户机上以非root用户的身份挂载目录时,它将使用适当的所有者和组挂载。
https://stackoverflow.com/questions/8734969
复制相似问题