目标平台:LOONGSON-1B(mips32指令集)
内核:linux-3.0
系统环境:ubuntu10.04
简介
nfs最主要的功能就是让网路上的 linux 电脑可以共享目录及档案。我们可以将远端所分享出来的档案系统,挂载 (mount) 在本地端的系统上,然後就可以很方便的使用远端的档案,而操作起来就像在本地操作一样,不会感到有甚麽不同。而使用 NFS 也有相当多的好处,例如档案可以集中管理等等,特别是对开发中的调试程序有极大的方便。下面是nfs搭建的步骤:
1、ubuntu安装nfs工具
apt-get install nfs-common
apt-get install nfs-kernel-server
2、ubuntu搭建nfs环境
在linux工作服务器端配置nfs功能的方法:
(1) #vi /etc/exports 加入以下内容
/home/xxx/nfsrootfs 192.168.*.*(rw,no_root_squash,sync)
其中:
/home/xxx/nfsrootfs:要共享的目录
* :允许所有的网段访问
rw :读写权限
sync:资料同步写入内在和硬盘
no_root_squash:nfs客户端共享目录使用者权限
保存退出 。
(2) 启动portmap服务
#/etc/init.d/portmap restart
(3) 启动nfs服务
#/etc/init.d/nfs-kernel-server restart
(4) 显示共享出的目录
#showmount -e
配置服务器端完毕。
3、开发板配置nfs功能
(1)配置内核,添加nfs功能
networking--> networking option--> tcp/ip networking-->ip:kernel level autoconfiguration
选上 -> ip:kernel level autoconfiguration
-> ip:dhcp support
-> ip:bootp support
-> ip:rarp support
File systems->Network File Systems->NFS file system support
选上 ->Provide NFSv3 client support
->Provide client support for....
->Provide NFSv4 client support...
->Root file system on NFS
编译内核,下载到板上的内核分区(这里为/dev/mtd0)。
(2)测试NFS功能(这里使用本地yaffs2文件系统)
在宿主机,把交叉编译后的程序置于共享目录(/home/xxx/nfsrootfs);
在目标板中,挂载宿主机的nfs共享目录:
#mount -o nolock 192.168.x.xxx:/home/xxx/nfsrootfs /mnt
其中:192.168.x.xxx为宿主机的IP地址。
执行成功则把宿主机的共享目录挂到了开发板的/mnt目录。
使用NFS运行程序:
#cd /mnt
可以直接运行当前目录已经交叉编译的程序。
取消挂载:
#umount /mnt
4、开发板配置启动nfs文件系统
在主机把使用的根文件系统文件源目录移至/home/xxx/nfsrootfs目录下,确保相关文件的链接路径正确。
开发板配置PMON启动参数:
set append 'g root=/dev/nfs rw nfsroot=192.168.x.xxx:/home/xxx/nfsrootfs noinitrd init=/linuxrc console=ttyS0,115200 ip=192.168.x.xxx:::::eth0:off'
其中:第一个IP为主机IP 第二个为开发板ip /home/xxx/nfsrootfs目录为主机nfs目录。
使用该配置开发板启动加载的是放置在宿主机/home/xxx/nfsrootfs目录里的根文件系统。
内核:linux-3.0
系统环境:ubuntu10.04
简介
nfs最主要的功能就是让网路上的 linux 电脑可以共享目录及档案。我们可以将远端所分享出来的档案系统,挂载 (mount) 在本地端的系统上,然後就可以很方便的使用远端的档案,而操作起来就像在本地操作一样,不会感到有甚麽不同。而使用 NFS 也有相当多的好处,例如档案可以集中管理等等,特别是对开发中的调试程序有极大的方便。下面是nfs搭建的步骤:
1、ubuntu安装nfs工具
apt-get install nfs-common
apt-get install nfs-kernel-server
2、ubuntu搭建nfs环境
在linux工作服务器端配置nfs功能的方法:
(1) #vi /etc/exports 加入以下内容
/home/xxx/nfsrootfs 192.168.*.*(rw,no_root_squash,sync)
其中:
/home/xxx/nfsrootfs:要共享的目录
* :允许所有的网段访问
rw :读写权限
sync:资料同步写入内在和硬盘
no_root_squash:nfs客户端共享目录使用者权限
保存退出 。
(2) 启动portmap服务
#/etc/init.d/portmap restart
(3) 启动nfs服务
#/etc/init.d/nfs-kernel-server restart
(4) 显示共享出的目录
#showmount -e
配置服务器端完毕。
3、开发板配置nfs功能
(1)配置内核,添加nfs功能
networking--> networking option--> tcp/ip networking-->ip:kernel level autoconfiguration
选上 -> ip:kernel level autoconfiguration
-> ip:dhcp support
-> ip:bootp support
-> ip:rarp support
File systems->Network File Systems->NFS file system support
选上 ->Provide NFSv3 client support
->Provide client support for....
->Provide NFSv4 client support...
->Root file system on NFS
编译内核,下载到板上的内核分区(这里为/dev/mtd0)。
(2)测试NFS功能(这里使用本地yaffs2文件系统)
在宿主机,把交叉编译后的程序置于共享目录(/home/xxx/nfsrootfs);
在目标板中,挂载宿主机的nfs共享目录:
#mount -o nolock 192.168.x.xxx:/home/xxx/nfsrootfs /mnt
其中:192.168.x.xxx为宿主机的IP地址。
执行成功则把宿主机的共享目录挂到了开发板的/mnt目录。
使用NFS运行程序:
#cd /mnt
可以直接运行当前目录已经交叉编译的程序。
取消挂载:
#umount /mnt
4、开发板配置启动nfs文件系统
在主机把使用的根文件系统文件源目录移至/home/xxx/nfsrootfs目录下,确保相关文件的链接路径正确。
开发板配置PMON启动参数:
set append 'g root=/dev/nfs rw nfsroot=192.168.x.xxx:/home/xxx/nfsrootfs noinitrd init=/linuxrc console=ttyS0,115200 ip=192.168.x.xxx:::::eth0:off'
其中:第一个IP为主机IP 第二个为开发板ip /home/xxx/nfsrootfs目录为主机nfs目录。
使用该配置开发板启动加载的是放置在宿主机/home/xxx/nfsrootfs目录里的根文件系统。