首先,要配置虚拟机上的linux支持nfs,配置共享目录,通过 cat /etc/exports可以查看共享目录。在配置linux内核时,要选择支持nfs。
在最开始,让u-boot的环境变量为:set bootargs noinitrd root=/dev/mtdblock3 init=/linuxrc console=ttySAC0 ,保证yaffs2系统可以正常运行。
然后再修改环境变量:set bootargs noinitrd root=/dev/nfsnfsroot=192.168.1.132:/share/first_fs ip=192.168.1.17:192.168.1.132:192.168.1.1:255.255.255.0::eth0:off init=/linuxrc console=ttySAC0 。
root=/dev/nfs(root=/dev/mtdblock3) 是指内核引导的文件系统,在nfs目录或者yaffs2。
nfsroot=xxx 是指虚拟机linux的IP地址和nfs共享目录,如果希望文件系统从改目录挂载,则加上文件系统名,入first_fs(busybox直接make生成的,外加一下目录配置,并非yaffs2)。
Ip=xxx 是指开发IP:虚拟机linux的IP:网关:子网掩码::网卡:关闭 。
如果用这条引导命令:set bootargs noinitrd root=/dev/mtdblock3 init=/linuxrc console=ttySAC0
则,进入文件系统后用命令挂载:mount -t nfs -o nolock 192.168.1.132:/share /mynfsc
Linux的IP共享目录 开发板的nfs共享目录。
如果在mount过程中出现错误提示:mount: 192.168.1.132:/share failed, reason given by server: Permission denied 。那么在虚拟机linux执行命令,授予权限
sudo /etc/init.d/nfs-kernel-server restart。
先配置开发板IP
ifconfig eth0 192.168.1.10 up
ifconfig eth0 up
ping 192.168.1.132 (虚拟机linuxIP)
如果不先配置eth0的IP,否则会出现这个错误
# mount -t nfs -o nolock 192.168.1.132:/share /mynfsc
mount: RPC: Unable to send; errno = Network is unreachable
通过学习韦老师的视频,我很快就学会了嵌入式Linux开发。