NFS自动挂载
NFS是Network File System的简写,即网络文件系统,用于目录和文件共享,通过使用NFS,用户和程序可以像访问本地文件一样访问远端系统上的文件。
使用NFS的好处:
使用更少的磁盘空间,数据可以存放在一台机器上而且可以通过网络访问。
用户不必在每个网络上机器里头都有一个共享目录,共享目录可以被放在NFS服务器上并且通过网络在每个地方都可用
如软驱,CDROM,和 Zip之类的存储设备可以在网络上面被别的机器使用。这可以减少整个网络上的可移动设备的数量。
实现NFS需要一台服务器和客户端机器,下面是客户端机服务器端所需进程和各进程的功能
实现NFS:
服务器端配置:
确保安装了NFS
[root@localhost ~]# rpm -qa |grep nfs
nfs-utils-lib-1.0.8-7.6.el5
nfs-utils-1.0.9-42.el5
查看rpc是否工作正常
[root@localhost ~]# rpcinfo -p
program vers protoport
1000002tcp111portmapper
1000002udp111portmapper
1000241udp653status
1000241tcp656status
1000111udp663rquotad
1000112udp663rquotad
1000111tcp666rquotad
1000112tcp666rquotad
1000032udp2049nfs
1000033udp2049nfs
1000034udp2049nfs
1000211udp38515nlockmgr
1000213udp38515nlockmgr
1000214udp38515nlockmgr
1000032tcp2049nfs
1000033tcp2049nfs
1000034tcp2049nfs
1000211tcp34341nlockmgr
1000213tcp34341nlockmgr
1000214tcp34341nlockmgr
1000051udp677mountd
1000051tcp680mountd
1000052udp677mountd
1000052tcp680mountd
1000053udp677mountd
1000053tcp680mountd
创建共享目录
[root@localhost /]# mkdir public
给共享目录可写权限,并且目录下内容不被其他用户删掉
[root@localhost /]# chmod o+wt public/
编辑共享清单
[root@localhost ~]# vim /etc/exports
/public*(rw,sync)(给任意用户对/public有读写权限)
[root@localhost ~]#service nfs restart
客户端配置:
查看rpc工作状态
[root@mail ~]# rpcinfo -p
program vers protoport
1000002tcp111portmapper
1000002udp111portmapper
1000241udp675status
1000241tcp678status
查看服务器共享清单列表
[root@mail ~]# showmount-e 192.168.20.128
Export list for 192.168.20.128:
/public *
[root@mail server]# rpm -qa |grep autofs
autofs-5.0.1-0.rc2.131.el5
编辑autofs
[root@mail ~]# vim /etc/auto.master
9 /misc/etc/auto.misc
10 /mnt/nfs/etc/auto.nfs--timeout=60(监测到/mnt/nfs本地目录下,按照策略文件进行操作,并且访问共享资源后60秒内没有操作就卸载)
产生策略文件并编辑(这里是使用auto.misc的样板改编的)
[root@mail etc]# cp auto.misc auto.nfs
[root@mail etc]# vim auto.nfs
18 server-rw,soft,intr192.168.20.128:/public
在/mnt/nfs目录下若执行cdserver 就把服务器端共享目录挂载到本地,并给予rw,soft,intr权限
[root@mail etc]#service autofs restart
最初没有被挂载
[root@mail ~]# df -h
FilesystemSizeUsed Avail Use% Mounted on
/dev/sda29.5G6.2G2.9G69% /
/dev/sda199M12M83M12% /boot
tmpfs506M0506M0% /dev/shm
执行操作
[root@mail ~]# cd /mnt/nfs/
[root@mail nfs]# ll
total 0
[root@mail nfs]# cd server
已经挂载到本地
[root@mail server]# df -h
FilesystemSizeUsed Avail Use% Mounted on
/dev/sda29.5G6.2G2.9G69% /
/dev/sda199M12M83M12% /boot
tmpfs506M0506M0% /dev/shm
192.168.20.128:/public
9.5G2.9G6.2G32% /mnt/nfs/server
查看公共目录下的内容
[root@mail server]# ll
total 0
-rw-r--r-- 1 nfsnobody nfsnobody 0 May52013 f1
-rw-r--r-- 1 rootroot0 May52013 f1.public
-rw-r--r-- 1 nfsnobody nfsnobody 0 May62013 f2
-rw-r--r-- 1 nfsnobody nfsnobody 0 May62013 f4
[root@mail server]# touch f5(创建f5文件)
[root@mail server]# ll
total 0
-rw-r--r-- 1 nfsnobody nfsnobody 0 May52013 f1
-rw-r--r-- 1 rootroot0 May52013 f1.public
-rw-r--r-- 1 nfsnobody nfsnobody 0 May62013 f2
-rw-r--r-- 1 nfsnobody nfsnobody 0 May62013 f4
-rw-r--r-- 1 nfsnobody nfsnobody 0 May62013 f5
退出共享目录
[root@mail server]# cd
[root@mail ~]# date
Sun May5 13:54:29 CST 2013
[root@mail ~]# date
Sun May5 13:55:21 CST 2013
[root@mail ~]# date
Sun May5 13:55:36 CST 2013
60秒后再去查看挂载状态,发现已经自动卸载了,再次执行刚刚的操作就会自动挂载
[root@mail ~]# df -h
FilesystemSizeUsed Avail Use% Mounted on
/dev/sda29.5G6.2G2.9G69% /
/dev/sda199M12M83M12% /boot
tmpfs506M0506M0% /dev/shm