本文参照资料:
1.朱老师嵌入式软件工程师课程
2. Ubuntu18.04系统中,开发板linux2.6.22内核通过NFS挂载根文件系统失败的解决方法.
3. 关于ubuntu18.04版本系统中无法挂载开发板nfs文件系统的解决办法
环境介绍
- 开发板型号:S5PV210
- 用于烧录的内核版本:2.6.35.7
- 操作系统Ubuntu18.04
问题描述
VFS: Unable to mount root fs via NFS, trying floppy.
原因
ubuntu18.04只支持nfs 3和nfs 4,而uboot默认使用nfs 2,是nfs的问题
在命令行敲
root@czp-virtual-machine:/home/czp# sudo cat /proc/fs/nfsd/versions
-2 +3 +4 +4.1 +4.2
root@czp-virtual-machine:/home/czp# rpcinfo -p | fgrep nfs
100003 3 tcp 2049 nfs
100003 4 tcp 2049 nfs
100003 3 udp 2049 nfs
可以验证,ubunt18.04默认把nfs2关闭了。
解决
vim /etc/default/nfs-kernel-server
在文末最后添加
RPCNFSDOPTS="--nfs-version 2,3,4 --debug --syslog"
重启nfs
/etc/init.d/nfs-kernel-server restart
root@czp-virtual-machine:/home/czp# vim /etc/default/nfs-kernel-server
root@czp-virtual-machine:/home/czp# /etc/init.d/nfs-kernel-server restart
[ ok ] Restarting nfs-kernel-server (via systemctl): nfs-kernel-server.service.
root@czp-virtual-machine:/home/czp# sudo cat /proc/fs/nfsd/versions
+2 +3 +4 +4.1 +4.2
root@czp-virtual-machine:/home/czp# rpcinfo -p | fgrep nfs
100003 2 tcp 2049 nfs
100003 3 tcp 2049 nfs
100003 4 tcp 2049 nfs
100003 2 udp 2049 nfs
100003 3 udp 2049 nfs
看见nfs2打开之后,启动开发板进行测试。
挂载成功。
.PS 安装nfs服务器
sudo apt install nfs-kernel-server