您的位置:首页 > 理论基础 > 计算机网络

搭建NFS网络文件系统

2018-03-17 16:33 453 查看
1.安装NFS服务器:sudo apt-get install nfs-kernel-server(注:1.Ubuntu上默认未安装NFS;2.安装上面的nfs-kernel-server时,apt会自动安装nfs-common和rpcbind(新版本)或是nfs-common和portmap(旧版本)
2.配置NFS服务器:sudo vim /etc/exports打开文件后,在文件最末尾添加: /home/tian/Downloads/lsb-sdk 192.168.8.*(rw,sync,no_root_squash)
3.重启服务器:sudo /etc/init.d/rpcbind restart(如果已经启动,可不执行该项)sudo /etc/init.d/nfs-kernel-server restart
4.测试(挂上即NFS服务器配置可用):mount -t nfs 192.168.30.188:/home/tian/Downloads/lsb-sdk /data/eldk_rootfs -o nolock
5.通过U-boot用NFS挂载根文件系统:(前提是内核配置中已经支持了NFS,配置细节可参考:http://jingyan.eeboard.com/article/75498)更改U-boot的env使内核命令行看起来像:setenv bootargs console=ttymxc0,115200 video=mxcfb0:dev=ldb,LDB-7inch,if=RGB666,bpp=32 ldb=sin1 video=mxcfb1:dev=hdmi,1920x1080M@60,if=RGB24 video=mxcfb2:off fbmem=48M ip=192.168.30.187:192.168.30.188:192.168.30.254:255.255.255.0:zchx_root:eth0:off nfsroot=192.168.30.188:/home/tian/Downloads/rootfs-agl,bg,soft,rsize=32768,wsize=32768 root=/dev/nfs rw rdinit=/no其中绿色部分为NFS相关,红色部分解释:本内核使用了initramfs,设置一个不存在的“/no”文件后就会执行常规操作,从而才能去挂载NFS的rootfs(注意!本以为通过红色部分的设置就能够挂载,但内核使用了initramfs就不会创建/dev/nfs设备,所以还是不能挂载)。console=ttymxc0:zchx_root:eth0:off ,bg,soft,rsize=32768,wsize=32768,proto=tcp,nfsvers=3,nolock(蓝色部分为高速环境推荐配置)客户端可处理的挂载参数可参考《鸟哥的私房菜-服务器篇》也可以通过man nfs查看

6.根文件系统无法正常启动问题的解决:①无法执行init崩溃的问题,网络不通也会导致该问题,如果网络能通,请参考“/Embedded/重要经验/嵌入式系统崩溃集锦/rootfs无法启动”。②nfs: server 192.168.30.188 not responding, still trying。(这种类型的问题肯定是nfs断掉了,只是断掉的原因有多种)可能是rcS等启动脚本改变网络配置导致无法链接到192.168.30.188。或者可以尝试加如上面蓝色部分中的相关配置,有可能还是回出现类似这样的错误:……(省略若干条同下一条相同的信息)nfs: server 192.168.30.188 not responding, timed out/etc/init.d/ifconfig-eth0: line 6: ifconfig: Input/output error这是因为rcS中执行的“/etc/init.d/ifconfig-eth0”的第6行后,网络就断了,具体原因还不知道(可能是配置网络的时候重启了eth0设备)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: