iTop4412不像是JZ2440一样可以在u-boot起来后在u-boot模式下设置bootargs内核启动参数。所以如果需要系统起来后挂载网络文件系统,必须编译一个启动挂载网络文件的内核(其实就是重新设置一下启动参数然后再编译一下内核-_-||)
1、编译可以挂载网络文件系统的内核
通过命令
grep -rn "root=/dev/nfs rw nfsroot" *
输出结果
./include/generated/autoconf.h:657:#define CONFIG_CMDLINE "root=/dev/nfs rw nfsroot=192.168.1.103:/home/topeet/Linux+QtE5.7/root ip=192.168.1.230:192.168.1.103:192.168.1.1:255.255.255.0:iTop4412:eth0:off rootfstype=ext4 init=/linuxrc console=ttySAC2,115200"
判定内核启动参数在autoconf.h中定义。下一步根据自己的需求设置相关内核启动参数,然后编译即可。
2、搭建可支持NFS网络启动的文件系统
讯为提供的最小文件系统,不能直接作为网络文件系统使用,还需要修改配置文件,进入最小文件系统目录root/etc/init.d 对此目录下的ifconfig-eth0文件稍加修改。如下
#if grep -q "^/dev/root / nfs " /etc/mtab ; then 是原来的代码在这里将其注释了,后期编译文件系统镜像前还需要设置回来。增加了下面这句
if grep -q nfs /proc/mounts ; then