NFS简介:
NFS(Network File System, 网络文件系统)可以通过网络将分享不同主机(不同的OS)的目录——可以通过NFS挂载远程主机的目录,访问该目录就像访问本地目录一样。一般而言, 使用nfs能够方便地使各unix-like系统之间实现共享。 但如果需要在unix-like和windows系统之间共享,就得使用samba了(关于ubuntu下安装samba详见:在ubuntu9.10上安装Samba服务器)。
当我们进行嵌入式linux开发时,则可利用NFS把宿主机(如虚拟linux)的目录挂载到目标板中。例如:可把VMware linux中的根文件系统目录挂载到开发板中,内核启动后,则直接挂载VMware linux目录中存放的根文件系统,省去了烧写flash,大大提高开发效率。
本文主要详细介绍了在Ubuntu9.10下安装配置NFS服务。
构建NFS服务:
1. 关闭防火墙:
ubuntu9.10 启动时自动关闭防火墙,可使用ufw status命令查看防火墙的状态。
2. 安装NFS:
ubuntu9.10上默认没有安装NFS服务器,因此首先要安装NFS服务程序:
安装nfs-kernel-server时,apt会自动安装nfs-common和portmap,这样,宿主机就相当于NFS Server了。
3. 配 置/etc/hosts.allow(打开这个文件,在后面加上以下内容)
portmap: 192.168.1.
lockd: 192.168.1.
rquotad: 192.168.1.
mountd: 192.168.1.
statd: 192.168.1.
注释:以上表示将允许任何IP地址以192.168.1为开头的主机连接到本NFS服务器上,当然,也可以指定特定的IP地址。
在构建NFS服务时,这一步我没做,但NFS也OK。
4. 需要重启才能更新
5. 配置/etc/exports(安装完nfs-kernel-server之后会有exports这个文件夹)
在该文件末尾添加下列语句:
/home/reille/root_nfs 为我们预设的实现本机与目标板文件同步的目录,也就是NFS挂载目录。下面简单说明了上述语句的意思:
- *:可填IP地址段,仅一个 * ,表示任意IP均可;
- rw:权限,表示允许目标板读写该目录;
- sync:数据同步写入内存和硬盘;
- no_root_squash:表示允许目标板以主机root用户身份挂载根文件系统。
6. 测试是否安装成功:
(其中192.168.1.125是虚拟机的IP地址),如果挂载成功,可在/opt目录下看到:/home/reille/root_nfs 文件夹下的内容。如果没有看到,检测哪里是没有配置正确。
上面的NFS安装配置过程,经过本人测试,是可行的!
附:NFS服务重启:
sudo /etc/init.d/nfs-kernel-server restart