我有一个 Centos 5.7 盒子,通过 PBIS Open(新的 LikeWise Open)对 Active Directory 进行身份验证,效果很好。现在,我试图让服务器自动挂载用户的 AD 主目录,位于//ad.server.dom/shares/home directories
(是的,路径中有一个空格。我没有设置它)。每个用户都有一个与用户同名的目录。
我尝试过让 pam_mount 工作,但它在 RedHat 和同类产品上存在一系列问题,我似乎无法让它工作。目录确实需要自动挂载,服务器才能执行其角色。我对自动挂载的阅读似乎表明没有办法让它进行身份验证,尽管我很高兴被证明是错的。我看过此资源,但它需要 RedHat (因此是 CentOS) 6 或更高版本,以及比我拥有的更新的软件包。
我可以使用命令手动(以 root 身份)挂载 AD 目录
mount.cifs "//ad.server.dom/Shares/home directories/testuser" /home/local/AD/testuser/nfs_mount/ -o username=testuser
当我以 身份登录时testuser
,我可以看到目录中的所有示例文件nfs_share
。
任何有关正确方向的提示都将不胜感激。这将在大学的服务器上运行,因此需要相当稳定,并会促使那里更多地采用 Linux。
答案1
如果 pam_mount 和 autofs 对您不起作用,您可以尝试使用 bash 脚本的 pam_exec。这很不方便,但对您有用,看看下面的内容是否适合您的需求:
添加到 pam.d/system-config-auth:
auth sufficient pam_exec.so expose_authtok /usr/local/bin/mount_home
session optional pam_exec.so /usr/local/bin/mount_home
创建文件 /usr/local/bin/mount_home:
#!/bin/bash
case "$PAM_TYPE" in
auth )
head -c -1 | mount.cifs "//ad.server.dom/Shares/home directories/$PAM_USER" /home/local/AD/$PAM_USER/nfs_mount/ -o username=$PAM_USER
;;
close_session )
umount /home/local/AD/$PAM_USER/nfs_mount
;;
esac
exit 0
我还没有测试过,但也许你可以让它为你工作。祝你好运!