Linux通过nfs挂载根文件系统失败:VFS: Unable to mount root fs via NFS, trying floppy.
在网上搜索各种资料均未解决。
最终发现原因是我的Ubuntu版本太新了,不兼容导致。
终于在大神的博客里找到解决方法:
查找资料发现从Ubuntu17.04开始,nfs默认只支持协议3和协议4,而kernel中默认支持协议2,所以才会出现挂载失败的情况,现有两种方法可以解决该问题:
1. 设置Ubuntu18.04系统中的nfs服务支持协议2,修改nfs配置文件 /etc/default/nfs-kernel-server,在文件末尾加入一句:RPCNFSDOPTS="--nfs-version 2,3,4 --debug --syslog"。
2. 如果kernel版本较高支持nfs协议3的话,可以在Uboot传到Kernel的bootargs参数中加入'nfsvers=3',使kernel使用nfs协议3。
参考博客:https://blog.csdn.net/sean_8180/article/details/81112520