在uClinux上实现nfs调试应用程序
1.首先说明,我的潜入式操作系统的IP:192.168.0.99,上面的PC机IP:192.168.0.16
2.如果现在我想把PC上/home/debug共享,并且可以直接调试应用程序,那么需要执行
chmod -R 777 /home/debug,设置这个文件夹下所有文件可读可写可执行
3.配置NFS服务器端
3.1确认主机安装了NFS服务
方法是查看/etc/rc.d/init.d目录下是否有nfs文件,如果有说明主机已经安装了nfs服务。
3.2编辑/etc/exports文件
服务器端在文件/etc/exports中设定允许被访问的文件、目录以及访问的权限。设定格式如下:
欲分享出去的目录 主机名称 或者IP (参数1,参数2)
可以设定的参数主要有以下这些:
rw:可读写的权限;
ro:只读的权限;
sync:资料同步写入存储器中。
async:资料会先暂时存放在内存中,不会直接写入硬盘。
本例中编辑/etc/exports为:
/home/debug 192.168.0.99/255.255.255.0(rw)
3.3使/etc/exports文件的修改生效
在启动了NFS之后又修改了/etc/exports,是不是还要重新启动nfs呢?这个时候我们就可以用exportfs命令来使改动立刻生效,该命令格式如下:
exportfs [-aruv]
-a :全部mount或者unmount /etc/exports中的内容
-r :重新mount /etc/exports中分享出来的目录
-u :umount 目录
-v :在 export 的時候,将详细的信息输出到屏幕上。
具体例子:
exportfs –rv
这个命令行要求全部重新输出一次。我们在每次修改了/etc/exports文件后都要运行一次该命令,或者直接restart nfs也可以,如下所述.
3.4启动NFS服务
现在就可以启动NFS服务了:
/etc/rc.d/init.d/nfs start
如果要停止NFS服务:
/etc/rc.d/init.d/nfs stop
重新启动(停止后再启动,在修改/etc/exports之后使用)命令:
/etc/rc.d/init.d/nfs restart
4.配置客户端
4.1配置内核
进入File Systems --->选项
选中:
[*] NFS file system support
[*] Provide NFSv3 client support
4.2配置用户选项
进入Network Applications ---> 选项
选中:
[*] portmap
进入BusyBox --->选项
选中:
[*] mount
[*] mount:support NFS mounts
完成以上配置后,即可编译产生映像文件。
5.挂载到主机
通过以下命令行,挂载到主机上:
/>mount –o nolock 192.168.0.16:/home/debug /var/nfs (这里的nfs文件夹当然要自己事先建好的)
命令行的参数是必要的,能够改善NFS下应用程序运行的速度。
当出现下一个/>时,mount成功。
接下来,你就可以直接运行应用秤杆程序了,修改了也不用重新下载的
6.运行主机的应用程序
运行mount目录下的可执行程序,程序输入:
/>cd /var/nfs
/>./demo (注意前面要加上“./”)
Hello World!