之前学了一个礼拜的JZ2440,跟着韦东山老师学的第一期,之前该学的也都学了,NFS当时也挂载上了,虽然懵懵懂懂不知道这到底有啥用。
后来有一些事就把学习耽搁了,昨天才把这东西重新捡起来,突然发现NFS挂不上了,当时没留下什么东西,所以也不知道是为什么挂不上,感觉可能是IP地址变了。当时要继续学下去的话感觉NFS挺重要的,就打算把NFS重新挂上去。
把配置的都照着以前的打上去,挂载的时候弹出`Kernel Panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)` ,看英文感觉是linux哪个文件没有mount,加上之前NFS没挂上,我也乱改了很多东西,所以怀疑自己是不是把哪个文件弄错了,就参照着运行了 sudo chmod +x /bin/mkyaffs2image,依然不行,后来重新检查了一遍NFS挂载的命令,才发现自己因为粗心出的错:
这是正确的命令 `set bootargs noinitrd root=/dev/nfs nfsroot=192.168.1.101:/work/nfs_root/tmp/fs_mini_mdev ip=192.168.1.102:192.168.1.101:192.168.1.1:255.255.255.0::eth0:off init=/linuxrc console=ttySAC0`
这是我输的命令`set bootargs noinitrd root=/dev/nfs nfsroot=192.168.1.101:/work/nfs_root/tmp/fs_mini_mdev ip=192.168.1.102:192.168.1.101:192.168.1.1:255.255.255.0:eth0:off init=/linuxrc console=ttySAC0`
在eth0前面应当有两个冒号,因为根据规则eth0前面输入的是<hostname>,也就是主机名,不写的话就空,但是冒号是不能省略,我虽然知道这个,但是还是忘记加上冒号,导致错误。