autofs 可以自动挂载相关目录。 我这边公司用来自动挂载HOME目录。这样在多台服务器可以登录看到同一个HOME


1:vi /etc/auto.master

1
2
3
/home          /etc/auto.nfs #添加此行, 前面是挂载点父目录,后面是配置文件
/library         /etc/auto.lib
/-                       /etc/auto.direct  # /- 直接映射

2: vi /etc/auto.lib

1
2
libs    -ftype=nfs,rw,soft,intr,rsize=32768,wsize=32768,tcp   test01:/local_library/libs/&
#挂载点名称  挂载参数  目标服务器:目录

3:vi /etc/auto.nfs

1
2
3
test    -ftype=nfs,rw,soft,intr,rsize=32768,wsize=32768,tcp   test01:/local_home/test.new
 
#挂载点名称  挂载参数  目标服务器:目录

4: vi /etc/auto.direct

1
/dvd    -ftype=nfs,rw,soft,intr,rsize=32768,wsize=32768,tcp   test01:/local_home/dvd

5:vi /etc/exports 

1
2
3
/local_home/       *(insecure,rw,sync)
/local_library/libs    *(insecure,rw,sync)
#NFS共享目录    NFS共享参数

6:设置相关启动, 

1
2
chkconfig autofs on
chkconfig nfs on


完成。


客户端运行提示错误:

1
2
INFO: Failed to obtain system lock on host with error code ENOLCK. Too many segment locks open, system lock table is full, or a remote locking protocol failed (e.g., locking over NFS).
INFO: Could not lock library for write. Trying again in 15 second(s).

此时的环境是:

Server: Ubuntu 16.04

Client: CentOS 5.11

经查在CentOS 5.11 的autofs配置文件中加入nolock参数解决上面的问题

1
test      -ftype=nfs,rw,soft,intr,rsize=32768,wsize=32768,tcp,nolock   test01:/local_home/test