NFS开机自动挂载

1、客户端和服务端分别设置开机启动服务

centos6:

chkconfig rpcbind on
chkconfig nfs on

centos5:

chkconfig portmap on
chkconfig nfs on

2、客户端/etc/fstab写入:

192.168.1.226:/data/test/www /data/test/www nfs rw

注释:写入规则错误,可能对导致服务器重启失败,详细规则请点击

3、检查是否开机挂载

重启客户端:

[root@localhost root]# reboot

输入:

[root@localhost root]#  df -h

NFS开机自动挂载_第1张图片

开机挂载成功

4、NFS 挂载失败原因
1.挂载时若出现mount.nfs: Input/output error

解决:在客户端也需启动portmap服务 service portmap status[查看状态];service portmap start[启动]

2.在用nfs共享大文件或者挂载根文件系统时候出现下面的问题:

nfs: server 192.168.1.125 not responding

nfs: server 192.168.1.125 not responding

nfs: server 192.168.1.125 OK

但是共享小文件还是可以的。

问题的原因分析:

1、NFS 的默认传输协议是 UDP,而PC机与嵌入式系统通过UPD交互时就会出现严重的网卡丢包现象;

2、server机和目标机网卡传输速率冲突,使得目标机需要大量时间复制大量数据包,其实如果目标机的网卡速率够大,则不用分那么多包,也不会冲突。

问题的解决方案:

方法一:在客户端改用TCP协议,使用下面的命令,在mount命令中加上参数tcp

mount -o tcp ,nolock 192.168.1.125:/nfs_root /mnt

也可这样干:

跟踪了fs/nfs/nfsroot.c的代码,发现在nfs作为根文件系统时,参数可以直接写在“nfsroot=”后面,每个参数用逗号隔开,如:

nfsroot=192.168.10.1:/rootfs,proto=tcp,nfsvers=3,nolock

这样就可以指定nfs使用tcp协议

方法二:指定传输速率(限定传输时一次读写的数据大小)

mount -t nfs -o intr,nolock,rsize=1024,wsize=1024 192.168.1.125:/nfs_root /mnt

3.挂载时出卡在连接状态

解决:在确认网络连接无异常的情况下则可能是iptable或者网络防火墙阻拦了NFS使用的TCP和UDP的111以及2049端口.以ESX为例,在需要挂载NFS共享盘时首先需要编辑防火墙安全文件允许访问该端口.

4、挂载时超时

检查客户端和服务器之前访问是否存在问题,

5、自动挂载失败,手动挂载成功

mount -a

解决:检查netfs是否启动

启动netfs

/etc/init.d/netfs start

开机启动

chkconfig netfs on

你可能感兴趣的:(nginx)