autofs自动挂载NFS共享目录配置文档

【一】ldap用户家目录自动挂载

需求:服务器instructor.example.com中用户家目录为/home/guests/ldapuserX,故可将/home/guests目录通过nfs共享出,提供ldap服务
客户端使用ldap服务器中用户登录系统(如:su - ldapuserX),可访问到ldapuserX的家目录/home/guests/ldapuserX

思路:因为ldap服务器中用户其家目录在vipw中可知为/home/guests/ldapuserX,故客户端使用ldap服务器上用户登录时,用户会在客户端本地目录下寻找相应/home/guests/ldapuserX目录,若被挂载到本地其它目录下,肯定会提示用户会找不到其家目录。所以客户端必须设置挂载到本地的目录等同于ldap服务器共享出的目录

操作
1、通过 system-config-authentication 连接ldap服务器
2、通过 showmount -e instructor.example.com 可知ldap服务器共享目录为/home/guests
3、设置autofs自动挂载(注意路径!)
(1)若在/etc/auto.master中设置主节点
/home /etc/auto.home
则/etc/auto.home中需设置为
* instructor.example.com:/home/&
或者
guests instructor.example.com:/home/guests/&

(2)若在/etc/auto.master中设置主节点
/home/guests /etc/auto.home
则/etc/auto.home中需设置为
* instructor.example.com:/home/guests/&

//注意以上两种方法都能达到将ldap服务器用户家目录/home/guests/ldapuserX挂载到本地/home/guests/ldapuserX目录,必须保证master中指定的主节点与home中指定的子节点的组合正好为home中指定的共享路径,其中&代表所有目录,不包含文件,*代表不创建子节点,直接挂载到主节点下
home+*=home/& //远程home目录下的所有目录挂载到本地home目录下
home+guests=/home/guests/& //远程home/guests目录下的所有目录挂载到本地home/guests目录下
home+guests+*=/home/guests/& //远程home/guests目录下的所有目录挂载到本地home/guests目录下

4、启动autofs服务
# /etc/init.d/autofs restart

5、测试
# su - ldapuserX
# pwd
显示/home/guests/ldapuserX,代表OK

【二】普通nfs共享目录自动挂载

需求:NFS服务器共享出目录/public,该目录下包含3个子目录(dir1,dir2,dir3)及2个文件(1.txt,2.txt)
目标:客户端需要访问远程共享资源,并将其挂载到本地目录下
实现
在/etc/auto.master中设置主节点
/remote /etc/auto.remote
(1)若在/etc/auto.remote中设置
* instructor.example.com:/public
//此处代表将远程/public目录挂载到本地/remote目录下,当本地执行cd /remote/public激活,可看到远程的3个子目录dir1-dir3
(2)若在/etc/auto.remote中设置
* instructor.example.com:/public/&
//此处代表将远程/public目录下所有子目录挂载到本地/remote目录下,当本地执行cd /remote/dirX激活,可看到远程的dirX子目录
注意:此种方式挂载,2个文件是看不到的!