CentOS6.3 通过NFS挂载根文件系统的问题

CentOS 6.3是目前最新的CentOS版本,此次在挂载根文件系统的时候破费周折,特此记录一下。

目标平台:HI3531  Cortex-A9

在CentOS 6.3当中,虚拟机的nfs服务已经默认安装,通过NFS挂载rootfs需要注意两个地方:

首先,检查系统是否安装了nfs和rpc相关软件,或者是否安装完整等。

通过命令:

root@localhost~# rpm -qa | grep nfs 


root@localhost~# rpm -qa | grep rpc




查看。如果没有安装就需要通过yum install进行完整安装,排除问题发生在安装软件这个环节。

其次,确认nfs服务和rpc服务都已经运行,通过命令ps -eaf | rpc 和ps -eaf | nfs来查看进程是否运行。




第三,确认端口没有被防火墙给“”墙“了。rpcbind负责nfs服务主机和客户机之间的地址映射和解析,并使用111端口,如果rpcbind服务没有正常运行或者

111端口没有正常通过防火墙进行转发,那么nfs客户端将无法正常挂载NFS共享目录。

当上述几步都正确配置之后,我们在linux客户端的终端上,使用showmount -e xxx.xxx.xxx.xxx(主机ip)命令可以查看目标主机的NFS共享目录情况。如果

配置正确,终端将打印目标主机的NFS共享目录路径。


笔者在调试过程中,出现了以下两种错误:

第一类错误打印: root@localhost~:clnt_create: RPC: Port mapper failure - Unable to receive: errno 113 (No route to host)

第二类错误打印:root@localhost~:RPCProgram not registered

第一类错误,有两种原因造成。

①是因为rpcbind服务未能正常启动或者服务异常造成的,在CentOS 6.3当中,portmap服务由rpcbind负责,这一点我们可以通过yum install portmap证实。源服务器会自动解析到rpcbind这个包。


②防火墙配置问题。通过修改/etc/iptables脚本目录,添加111、2049等nfs和rpc服务使用的端口。或者直接关闭防火墙(不建议,除非你的虚拟机就在安全的局域网内或者虚拟机不作为网络服务器使用)。同时,也可以通过图形化界面去配置和编辑防火墙规则(iptables)。这里要注意一下,在CentOS 6.3当中,/etc目录下有多个iptables脚本文件,确保选择IPV4相关脚本(如果使用IPV6,请选择对应脚本修改)。


如果对命令不熟悉,可以到图形化界面进行配置,如下图所示:


第二类错误,是笔者进行了防火墙配置和重启RPC服务的操作之后产生的。通过在nfsstats命令查看当前NFS服务启动和配置情况,发现下图中的rpcidmapd服务未能正常启动,导致NFS挂载异常。



手动重启之后,同时再次使用service nfs restart命令重新启动NFS服务,客户机showmount命令正常打印了主机共享的NFS目录。

重启开发板之后,根文件系统正常挂载。


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实验报告 一、 实验名称:NFS服务器及客户机配置 二、 实验目的:NFS服务器共享目录,客户机可以进行访问 三、 实验步骤: (1) NFS服务器: 1.#vi /etc/sysconfig/network-scripts/ifcfg-eth0进行IP地址配置。IP:192.168.100.3 2.#vi /etc/sysconfig/network 修改计算机名为nfs-server。 3.#reboot 4.#service iptables stop 关闭防火墙。 5.#rpm –q portmap nfs-utils 查看软件包。 6.#mkdir /home/share 创建共享目录。 7.#touch /home/share/file.txt 在共享目录下新建一个文本文档。 8.#echo 123 > /home/share/file.txt 在文本中追加内容123. 9.#vi /etc/exports 设置访问权限。 /home/share 192.168.100.4(sync,rw) 给192.168.100.4这台主机读和写的权限。 :wq 保存退出。 10.#cat /etc/exports 查看设置的访问权限。 11.#service portmap status #service nfs status 查看两个软件包的状态。 #service nfs start 开启NFS软件包。 #chkconfig --list portmap 查看服务器运行级别3,5是否开启。 #chkconfig --list nfs 查看服务器运行级别3,5是否开启。 #chkconfig --level 35 nfs on 开启3,5运行级别。 #chkconfig --level 35 iptables off 关闭防火墙规则。 #iptables -F(清空规则) #iptables -L(查看) #chmod o+w /home/share/file.txt 给其他用户对共享目录中的文本文档写入权限 # exportfs –av 输出当前主机NFS服务器所有的共享目录。 (2) NFS客户机: 1.#vi /etc/sysconfig/network-scripts/ifcfg-eth0 进行IP地址配置。IP:192.168.100.4 2.#vi /etc/sysconfig/network 修改计算机名为nfs-client。 3.#reboot 4.#service iptables stop 关闭防火墙。 5.# showmount -e 192.168.100.3 查看NFS服务器的输出。 6.# mount -t nfs 192.168.100.3:/home/share /mnt 挂载NFS服务器中的共享目录。 7.# cd /mnt 显示当前主机挂载NFS共享目录。 ls 8.#vi /file.txt 按i可以进入输入模式,完成可以读写的操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值