1、安装 NFS 服务
sudo apt-get install nfs-kernel-server
2、修改 NFS 配置文件
vi /etc/exports
在文件中添加 NFS 的目录
/nfsboot *(rw,sync)
更改了/etc/exports 后要通过 sudo exportfs -r 来更新这个文件
3、在根目录下建立 NFS 的目录
sudo mkdir /nfsboot
修改该目录的权限
sudo chmod 777 -R /nfsboot
4、重启 NFS
/etc/init.d/nfs-kernel-server restart
5、测试 NFS
尝试一下挂载本地磁盘(我的 linux 系统 IP 为 192.168.1.102,将/nfsboot 挂载到/mnt)
sudo mount 192.168.1.102:/nfsboot /mnt
运行 $ df 看看结果
sudo umount /mnt
6 使用NFS调试程序
在 uboot 下修改 linux 内核的启动参数为:
setenv bootargs noinitrd root=/dev/nfs console=ttySAC0 nfsroot=192.168.1.102:/nfsboot ip=192.168.1.20:192.168.1.102:192.168.1.1:255.255.255.0::eth0:on fbcon=rotate:1 init=/linuxrc
运行 saveenv 保存参数。
其中
192.168.1.102 是 NFS 主机端 IP; 192.168.1.20 是板子 IP; /nfsboot 是共享目录。
重启内核,最后阶段内核会到服务器端挂载共享目录的内容作为根文件系统。