NFS网络文件系统的实现

原理图如下:

30.120nfs server 30.100 client

1.[root@mail ~]# rpcinfo -p (查看自己的rpc

   程序 版本 协议   端口

    100000    2   tcp    111  portmapper

    100000    2   udp    111  portmapper

    100024    1   udp    866  status

100024    1   tcp    869  status

[root@mail ~]# rpcinfo -p 192.168.30.100 (查看对方的)

2.编译共享的清单在server

[root@mail ~]# mkdir /hua (物理路径和共享名是一样的)

[root@mail ~]# vim /etc/exports 

/hua  192.168.30.0/24(ro)  (要实现可写,必须是网络权限和本地权限都要有可写的操作)

   物理文件夹  来源(权限,参数)

   /public     *(ro)  1.1.1.1(rw,sync) *.abc.com(ro)  192.168.1.0/24(ro)

[root@mail ~]# rpm -qa |grep nfs (确定已经安装此服务,默认安装)

[root@mail ~]# service nfs start

[root@mail ~]# chkconfig nfs on

[root@mail ~]# rpcinfo -p

[root@mail ~]# exportfs -rv (对以后配置导出详细信息)

exporting 192.168.30.0/24:/hua

3.客户机测试是否可以访问

需要[root@mail ~]# rpcinfo -p 确定客户机已经开启了这个服务

然后看是否有权限访问

[root@mail ~]# showmount -e 192.168.30.120 -e表示对方的exports文件)

Export list for 192.168.30.120:

/hua 192.168.30.0/24

4.如何把共享文件挂载到本地

[root@mail ~]# mkdir /mnt/hua

[root@mail hua]# mount 192.168.30.120:/hua /mnt/hua/ (和smaba有些不一样)

[root@mail hua]# mount 就可以看到了

[root@mail hua]# cd /mnt/hua/ 就可以看到server共享的东西了

5.如何实现开机自动的挂载

[root@mail hua]# vim /etc/fstab

客户机测试

[root@mail hua]# umount /mnt/hua/

umount: /mnt/hua: device is busy

umount: /mnt/hua: device is busy   (出错,主要是你现在已经在这个目录了,需要退出这个目录)

[root@mail hua]# fuser -v /mnt/hua/ (查看哪个用户在这个目录下)

[root@mail hua]# fuser -km /mnt/hua  (强制杀死在这个目录下的人)

[root@mail ~]# mount -a

[root@mail ~]# mount 就可以看到了

6.因为nfs有一个status状态,如果经常连接着而不做任何事,这样是非常消耗资源的,为了解决这个问题,需要一个自动auto服务,超过一定的时间挂断,要想在连接,hia可以直接连接上。

[root@mail ~]# rpm -qa |grep auto

autofs-5.0.1-0.rc2.131.el5 (自动挂载文件系统)确保安装上 客户机

[root@mail ~]# chkconfig --list |grep auto 

autofs          0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭

要实现自动挂载需要改auto的一些脚本

[root@mail ~]# vim /etc/auto.master 

 10 /mnt/hua  /etc/auto.nfs  --timeout=60

[root@mail ~]# cp -p /etc/auto.misc /etc/auto.nfs

[root@mail ~]# vim /etc/auto.nfs 

server          -ro,soft.intr           192.168.30.120:/hua

[root@mail ~]# service autofs restart

[root@mail ~]# cd /mnt/hua/

[root@mail hua]# cd server  (执行这个动作后然后就自动挂载上去了)

[root@mail server]# mount  (可以看到已经被挂载上了)

60秒后查看,可以看到已经没有挂载了,失去了连接,要想再次挂载,在cd server 即可