首先:nfs挂载,pc机的nfs主机端要启动,nfs的目录下面是busbox制作的根文件系统,这里不需要制作成yaffs2的镜像,nfs根文件系统本身就是一种前期调试的手段而已
其次:uboot传递给内核的的参数是nfs启动的一些ip地址的值,或者直接在内核里面.config支持这些参数,然后内核配置nfs为客户端,然后再支持网卡,因为是开发板要和pc通信
最后:编译内核,进入内核 ok了
还有一个uboot传递参数的格式
这里需要uboot给内核传递ip地址等参数,加载的nfs目录
bootargs console=ttyS0,115200n8 noinitrd rw ip=192.168.1.188:192.168.1.181:192.168.1.1:255.255.255.0:::offroot=/dev/nfs nfsroot=192.168.1.181:/home/coo/dm6446/nfs_rootfs,nolock mem=64M
参数之间注意加空格。
另外你的 kernel 中的 ROOT_NFS 打开了没有?
│ CONFIG_ROOT_NFS: │
│ │
│ If you want your system to mount its root file system via NFS, │
│ choose Y here. This is common practice for managing systems │
│ without local permanent storage. For details, read │
│ <file:Documentation/filesystems/nfsroot.txt>. │
│ │
│ Most people say N here. │
│ │
│ Symbol: ROOT_NFS [=y] │
│ Prompt: Root file system on NFS │
│ Defined at fs/Kconfig:1223 │
│ Depends on: NETWORK_FILESYSTEMS && NFS_FS=y && IP_PNP │
│ Location: │
│ -> File systems │
│ -> Network File Systems (NETWORK_FILESYSTEMS [=y]) │
│ -> NFS client support (NFS_FS [=y]) │
│