Mac OS X - 通过 NFS 共享的用户主目录

Mac OS X - 通过 NFS 共享的用户主目录

我在我们的系统上设置用户主目录时遇到了一些问题。

我们的服务器是 XServe,使用 Open Directory 来管理用户帐户。

我们的大多数工作站都是 OS X,但也有少数工作站运行 Linux(Centos 5.3),随着时间的推移,我们预计 Linux 工作站的比例会增加(在某个时候,我们希望将服务器端也转移到 Linux,但目前我们运行的是已有的)

为了确保 Linux 和 OS X 工作站都在同一个位置看到用户的主目录,我使用 NFS 共享了主目录。

在服务器端,主目录存储在:

/Volumes/data/company_users

它安装在工作站上以:

/mount/company_users

这在 Linux 工作站上运行良好,但在 OS X 下有些奇怪。

对于通过 GUI 登录的用户来说,一切都很好。但是,如果用户尝试通过 SSH 进入他们不是主用户的计算机,他们通常无法访问自己的主目录。

当您通过 GUI 登录时,OS X 似乎正在尝试对用户主目录挂载点执行其他操作......

例如,在这台机器(nv001)上,我(hugh)登录到了 GUI。

Last login: Mon Mar  8 18:17:52 on ttys011
[nv001:~] hugh% ls -al /mount/company_users
total 40
drwxrwxrwx   26 hugh    wheel         840 27 Jan 19:09 .
drwxr-xr-x    6 admin   admin         204 19 Dec 18:36 ..
drwx------+ 128 hugh    staff        4308 27 Feb 23:36 hugh
drwx------+  26 matt    staff         840  4 Dec 14:14 matt
[nv001:~] hugh% 

因此 Matt 可以访问他的主目录。但是,如果我尝试切换到他:

[nv001:~] hugh% su - matt
Password:
su: no directory
[nv001:~] hugh% 

或者:

[nv001:~] hugh% su matt
Password:
tcsh: Permission denied
tcsh: Trying to start from "/mount/company_users/matt"
tcsh: Trying to start from "/"
[nv001:/] matt% 

有人知道为什么会这样吗?目前这给我带来了各种各样的问题……目前我能成功切换用户的唯一机器是存储用户目录的服务器,实际上/mount/company_users只是一个指向/Volumes/data/company_users

答案1

我认为在其他一些人的帮助下,这个问题已经解决了......

问题在于 /mount/company_users 中的主目录被挂载为 NFS,但 OSX 的工作组管理器根据 AFP 链接和本地挂载点来定义主目录位置 - 因此 AFP 挂载和 NFS 挂载在某处发生冲突。

我通过将每个用户的主目录切换为仅由完整路径而不是完整路径和 afp:// url 定义来修复此问题。

相关内容