设置共享目录: #vi etc/exports 第一次用应该是空白的里面,可以在里面输入/ *(rw,sync,no_root_squash) 保存退出。 前面的/是共享目录,*号代表的是任意ip或主机名都可以访问。括号里面是参数,其中rw表示具有可擦写权限;ro表是只读权 限;no_root_squash表示如果登录共享目录的使用者是root的话,那么他对于这个目录具有root的权限;root_sqush表示如果登 录共享目录的使用者是root的话,那么他的权限将被限制为匿名使用者,通常他的UID与GID都会变成nobody;all_squash表示不论登录 共享目录的使用者啥身份,他的权限都将被限制为匿名者;sync表示文件同步写入内存和硬盘当中;async表示文件会先暂存在内存,而不是直接写入硬 盘。 启动nfs: 首先设置防火墙,可以#setup也可以#lookkit。 然后输入#service nfs start 或者输入#/etc/rc.d/init.d/nfs start 不能直接到/etc/rc.d/init.d/目录中然后输入#nfs start。。
也可以直接在图形界面上开启nfs服务,可以直接命令#serviceconf直接调出图形界面。 检测: 输入# mount -t nfs localhost:/ /mnt/ 注意:mnt后面有一斜杠,还有主机名后面冒号没有空格 那么在/mnt/下就可以看到/目录了。 在mini2440开发板上挂载host:/目录: 实践: 在target board的linux shell下,执行下列命令来进行NFS共享目录的挂载。 #mkdir /tmp/nfs #mount -o nolock -t nfs 192.168.1.129:/ /tmp/nfs #ls /tmp/nfs
由于很多嵌入式设备的根文件系统中不带portmap,所以一般都使用-o nolock参数,即不使用NFS文件锁,这样就可以避免使用portmap。如果顺利,在/tmp/nfs下,就可以看到linux server的共享文件夹下的内容了,而且两个文件夹内的修改是同步的。
注意:本来nfs必须要用portmap服务的。。但是我这个fedora9没装portmap却也成功nfs了,或许喝-o有关,下面的摘录来自网上,这些我均没配置,但也成功了。如下: 首先要启动portmapper(端口映射)服务,这是NFS本身需要的。 #/etc/init.d/portmap start 然后启动NFS Server。此时NFS会激活守护进程,然后开始监听客户端的请求。 #/etc/init.d/nfs start NFS Server启动后,还要检查一下linux server的iptables(防火墙)等,确定没有屏蔽NFS使用的端口和允许通信的主机。 可以首先在linux server(host)上面进行NFS的回环测设。修改/etc/hosts.allow,把ip改为linux server的ip地址,然后在linux server上执行命令: #mount -t nfs <your-server-ip>:/home/lqm /mnt #ls /mnt 如果NFS Server正常工作,应该在/mnt下面看到共享目录/home/lqm的内容。 target board端的client: 内核配置时,选择如下: File system--> Network File Systems--> 选中NFS System support和Provide NFSvs client support,然后保存退出,重新编译内核,将生成的zImage重新下载到target board。 |
|