1,NFS网络共享服务

NFS优点:

1、简单-容易上手掌握

2、方便-部署快捷,维护简单

3、可靠-从软件层面上看,数据可靠性高, 经久耐用

NFS的局限

1,单点故障,如果NFS server宕机所有客户端都不行访问共享目录,负载均衡可以弥补

nfs原理 (NETwork file system)

2,挂载原理

共享挂载,设置权限,访问共享,传输端口随机选择(RPC端口:111)

RPC>NFS

RCP:记录每隔NFS功能所对应的端口号,并传递信息给nfs,prot监听服务,告知NFS客户端。

注意:RPC服务重启后,NFS端口记录清空,需要重启NFS 重新注册,NFS文件修改后不需要重启。/etc/init.d/nfs reload

过程:(1,首先启动Portmap服务,2然后启动NFS服务,向Portamp服务注册)

1,客户端RPC发起请求,通过网络,请求服务端的RPC服务。

2,服务端接受到服务请求,就会查找NFS端口,并反馈给客户端RPC信息

3,反馈给客户端 就可以联机,

实验:cat /etc/redhat-release 查看系统版本

      uname -r                    内核版本

安装相关软件

        yum install nfs-utils postmay(然后安装portmap服务,portmap在centos6中改名为rpcbind)

1,服务端启动/etc/init.d/rpcbind start 

2,查看端口使用情况 netstat -lnt

3,通过 rpcinfo -p localhost 检测NFS向RPC注册了那些端口

4,启用NFS/etc/init.d/nfs start

5,添加开机启动 chkconfig nfs、rpcbind on并查看列表chkconfig --list|egrep "rpcbind|nfs"

6,showmount -e 192.168.1.201查看服务端提供哪些共享目录

7,mount -t nfs 192.168.1.201:/qqq1 /mnt 将磁盘挂载到本地之后df-h 查看

注意nfs权限及本地文件权限

[root@Server qqq1]# id nfsnobody

uid=65534(nfsnobody) gid=65534(nfsnobody) groups=65534(nfsnobody)

重启后会时效,永久挂载方法:

可以把共享的目录在/etc/fstab 中进行配置,这样开机会自动加载mount的整个命令,而不需要开机手工执行 mount -t nfs IP:/目录,在/etc/fstab中的加入如下配置即可,语法如下:

192.168.1.201:/qqq1  /qqq1/video  nfs       defaults   1 1

服务器的IP及目录      本地挂载点 挂载类型   缺省项    是否需要备份

# df -h|grep /mnt

192.168.1.201:/qqq1    19G  2.0G   16G  11%   /mnt

文件系统              容量  已用 可用  已用%  挂载点

8,强制卸载NFS挂载点(Server端死机或server与client之间网络问题 df-h卡死 需要强制卸载NFS)

umount -lf /mnt

 

人为模拟错误的学习方法

(1)rpcbind(portmap)中断,不会影响已连接的NFS,因为portmap只是在NFS server不知道NFS client端口时,起到桥接的作用。(参考NFS原理)

(2)System Error:Connection refused(连接拒绝)因:对端提供服务的端口无法连接,防火墙阻止

解决:开启RPC服务 获取端口111

(3)program not registered NFS没有向RPC注册端口

解决:在开启RPC服务后,开启NFS服务 注册端口

(4)(NFS中断优化:mount -t nfs -o nosuid,noexec。nodev,rw,hard,intr,rsize=221233,wsize=234523 192.168.1.201:/qqq1 /mnt)(添加hard,intr 服务端死机后 不会影响到客户端死机 有超时时间限制)