Ubuntu 18.04刚发布不久,我就把原来的 Ubuntu 16.04 lts 版本升级到了 Ubuntu 18.04 lts,结果发现原来启动的好好地开发板居然启动不起来了,报错:VFS: Unable to mount root fs via NFS, trying floppy。
不应该啊,明明 nfs 都开起来了为啥突然不好使了,用虚拟机挂载主机的 nfs 共享目录一点问题都没有的,说明问题不在配置上。想想 Ubuntu 18.04 上的功能应该都是之前验证过的,不然怎么叫 Long Term Support 呢,然后去找 17.10 有没有类似情况,果然给找到并解决了。
解决方法
Ubuntu 17.10 之后 nfs 默认就只支持协议3和协议4,但是 uboot 默认启动的是协议2,若想要求 nfs 支持协议2,就在/etc/default/nfs-kernel-server末尾加一句:RPCNFSDOPTS="--nfs-version 2,3,4 --debug --syslog",然后重启一下 nfs。大功告成!
当然也有人说可以在 uboot 的bootargs启动参数后面加nfsvers = 3,让uboot 强制按照协议3执行,不过可能是我的 uboot 版本太低了,不支持协议3,所以这个办法不是很好使。
相关主题