挂载NFS网络文件系统
一、搭建环境
1)硬件
方案1:笔记本(win 7)一台,开发板一个(s5pv210),路由器(TP-LINK)一个,usb转串口线1根,直通网线1根。
连接方式1:开发板(接串口)与笔记本(接usb)之间采用usb转串口线连接,网线连接路由器,笔记本使用无线
连接路由器(也可以是网线,不过硬件上就得再加1根)。
方案2:笔记本(win 7)一台,开发板一个(s5pv210) ,usb转串口线1根,交叉网络1根。
连接方式2:开发板(接串口)与笔记本(接usb)之间采用usb转串口线连接,开发板与笔记本之间采用交叉网线连接。
2)软件
安装好usb转串口驱动,开发板终端调试软件(SecureCRT4.1),虚拟机(VM9),ubuntu 12.01。
二、实验步骤
1)首先网络要ping的通
相关设置:
1、虚拟机VMware Workstation-->VM-->Settings-->Network Adapter,右边有四个选项选择桥接(Bridged)。
2、IP地址设置:开发板IP,虚拟机IP(ifconfig eth0 192.168.1.128),笔记本IP,三者要保证在同一个网段中。
涉及命令:
① IP地址查看命令,ubuntu下为ifconfig。win 7下ipconfig。SecureCRT下为(p,print,ifconfig三种,对应不同模式下)。
② ping 命令。例:ping 192.168.129。PS:我在挂载成功之前开发板是一直ping不通自己的,是采用静态IP地sq址ping的)。
注:u-boot,kernel,linux系统移植完成后最好是先进入系统执行一下命令:autoeth0,自动获取ip,之前没执行就一直没挂载成功
2)搭建Ubuntu nfs服务器
进行 NFS 服务器端端与客户端的安装
sudo apt-get install nfs-kernel-server nfs-common portmap
这里安装的是NFS要用到的三个包nfs-kernel-server,nfs-commoon,portmap
3)NFS挂载目录配置
在/etc/exports 末尾处添加如下语句(注:/gzsd/nfs下应该包括你制作的linux文件系统的目录,否则无法成功挂载,利用cp语句拷贝到/gzsd/nfs即可,还有就是关闭ubuntu(iptables -F)下和win 7的防火墙)
/gzsd/nfs *(rw,sync,rw,sync,no_subtree_check,rw,sync,no_root_squash)
PS:/gzsd/nfs 为NFS的服务目录,也就是说你的开发板的根目录在挂载成功之后即为/gzsd/nfs的目录(文件就方便传输了,同步了),另上述语句中的*为代表任意一个IP地址,教程上让写的是开发板的静态IP,结果找了N久错误才发现是这里出了问题,我之前就写的是静态IP地址,一直挂载不成功。
然后保存退出,然后执行下列命令:exportfs -a(重新上电后需要执行,否则很容易造成NFS挂载失败)
每次修改过/etc/exportfs 后也必须执行上面的命令,否则很容易造成NFS挂载失败。
4)重启服务
sudo /etc/init.d/portmap restart(重新上电后需要执行,否则很容易造成NFS挂载失败)
sudo /etc/init.d/nfs-kernel-server restart(重新上电后需要执行,否则很容易造成NFS挂载失败)
5)进行测试
尝试一下挂载本地磁盘,(我的ubuntu系统IP为192.168.1.129,将/gzsd/nfs 挂载到/mnt)
sudo mount 192.168.1.129:/gzsd/nfs /mnt
运行df看看结果
sudo umount /mnt 卸载该操作。
6)链接与设置
uboot启动后按s键-->输入:init=/linuxrc console=ttySAC0,115200 root=/dev/nfs rw nfsroot=192.168.1.129:/gzsd/nfs ip=192.168.1.20:192.168.1.129:192.168.1.1:255.255.255.0:test::off(192.168.1.20为开发板静态IP地址,192.168.1.129为虚拟机IP地址,192.168.1.1为路由器地址,255.255.255.0为采用的子网掩码)-->b键。
7)成功
PS:linux下密码是输入是不显示的。
注意看:同步多出了个zhangqing.txt