在OpenIndiana服务器上,我试图用Ubuntu Linux机器正确访问NFS4共享。
拥有服务器上共享文件的用户名是“nick”,服务器上的UID是104。 在服务器上拥有文件的组是“nick”,服务器上的GID是100。
Linux机器上存在相同的用户名/组,但UID是112,GID是112。
这是我迄今为止所做的:
在Linux的/ etc / fstab中创build了挂载共享的条目。 这工作得很好,但是当我在Linux机器上执行“ls -l”时,用户/组被设置为nobody。
我在Linux机器上编辑了/ etc / default / nfs-common并设置了“NEED_IDMAPD = yes”。 我还在Linux机器上编辑了/etc/idmapd.conf,并在OpenIndiana机器上设置了“Domain = lan”。 我重新启动,现在:
当我在Linux机器上,并在共享中执行“ls -l”时,文件显示为由用户“nick”和组“nick”拥有。 大! 我以为我有。 但是,当我“苏尼克”,并做“触摸asdf”,该文件是用错误的用户名/组创build。 当我在OpenIndiana计算机上查看新创build的文件时,它显示的用户名为112,而组为112,因为该文件正在使用该UID / GID创build,但没有映射到OpenIndiana上的任何用户名/组侧。
所以基本上我在中途工作。 我可以用适当的映射来查看文件,所以idmapd至less在某种程度上工作,但映射不能正确地翻译。 我错过了什么?
我发现这个链接描述这个确切的问题。 笔者得出的结论是,这个问题是不可避免的,这主要是由于NFS4的devise缺陷造成的。 我希望有人有一些修复信息。
这真的不可思议,但idmapd真的不这样做! 我花了2天的时间才发现,在networking上( 例如 , 这是一个人性化的 ,或者你的链接 )和另外两天,相信有人可以创造这样一个令人惊讶的混乱的混乱。
不,谈论uid映射,让ls -l打印映射的uid,但是在访问这些文件时让它失败… jeee,tststs,headbang,没办法!