欢迎来到天天文库
浏览记录
ID:52495513
大小:238.87 KB
页数:11页
时间:2020-04-08
《嵌入式linux的NFS开发环境的建立及配置实例.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、NFS文件系统制作在应用程序开发环节,NFS方式比ftp方式的执行效率要高,因为它不需要将linuxserver端的程序下载到嵌入式目标系统就可以调试。下面先将NFS建立的详细过程写一下,然后举一个简单的应用程序开发实例来比较ftp方式和nfs方式的不同。1建立NFS开发环境嵌入式linux的NFS开发环境包含着两个方面:一是linuxserver端的NFSServer支持;二是targetboard的NFSClient支持。1.1linuxserver端1.1.1以root的身份登录,编译共享目录的配置文件exports,指定共享目录及其权限。#vi/etc/expo
2、rts在该文件中添加:/home/lqm(共享目录)192.168.1.*(rw,sync,no_root_squash)添加的内容表示允许IP范围在192.168.1.*的计算机以读写的权限来访问共享目录/home/lqm。1.1linuxserver端【注:参数说明如下:rw---读/写权限。如果设定只读权限,则设为ro。但是一般情况下,为了方便交互,要设置为rw。sync--数据同步写入内存和硬盘。no_root_squash--此参数用来要求服务器允许远程系统以它自己的root特权存取该目录。就是说,如果用户是root,那么他就对这个共享目录有root的权限。很明
3、显,该参数授予了targetboard很大的权利。安全性是首先要考虑的,可以采取一定的保护机制,在下面会讲一下保护机制。如果使用默认的root_squash,targetboard自己的根文件系统可能有很多无法写入,所以运行会受到极大的限制。在安全性有所保障的前提下,推荐使用no_root_squash参数。】1.1.2起用保护机制可以通过设定/etc/hosts.deny和/etc/hosts.allow文件来限制网络服务的存取权限。***/etc/hosts.deny***portmap:ALLlockd:ALLmountd:ALLrquotad:ALLstatd:
4、ALL1.1.2起用保护机制***/etc/hosts.allow***portmap:192.168.1.100lockd:192.168.1.100mountd:192.168.1.100rquotad:192.168.1.100statd:192.168.1.100同时使用这两个文件就会使得只有ip为192.168.1.100的机器使用NFS服务。你的targetboard的ip地址设定为192.168.1.100,这样就可以了。1.1.3启动首先要启动portmapper(端口映射)服务,这是NFS本身需要的。#/etc/init.d/portmaps
5、tart然后启动NFSServer。此时NFS会激活守护进程,然后开始监听客户端的请求。#/etc/init.d/nfsstartNFSServer启动后,还要检查一下linuxserver的iptables等,确定没有屏蔽NFS使用的端口和允许通信的主机。可以首先在linuxserver上面进行NFS的回环测设。修改/etc/hosts.allow,把ip改为linuxserver的ip地址,然后在linuxserver上执行命令:#mount-tnfs:/home/lqm/mnt#ls/mnt如果NFSServer正常工作,应该
6、在/mnt下面看到共享目录/home/lqm的内容。1.2targetboard端的client1.2.1嵌入式linux内核应该支持NFS客户端。内核配置时,选择如下:Filesystem-->NetworkFileSystems-->选中NFSSystemsupport和ProvideNFSvsclientsupport,然后保存退出,重新编译内核,将生成的zImage重新下载到targetboard。2.2挂接NFS文件系统在targetboard的linuxshell下,执行下列命令来进行NFS共享目录的挂载。#mkdir/mnt/nfs#mount-onol
7、ock-tnfs:/home/lqm/mnt/nfs#ls/mnt/nfs2.2挂接NFS文件系统由于很多嵌入式设备的根文件系统中不带portmap,所以一般都使用-onolock参数,即不使用NFS文件锁,这样就可以避免使用portmap。如果顺利,在/mnt/nfs下,就可以看到linuxserver的共享文件夹下的内容了,而且两个文件夹内的修改是同步的。
此文档下载收益归作者所有