原来曾转载过一篇同样的文章,文章讲解是十分详细的,面面俱到,但是同时就显得繁复。自己配置了Ubuntu中和一块开发板的nfs之后,总结一下以给后来者做抛砖引玉之用 开发板: Debian GNU/Linux 7.5(wheezy) Ubuntu:Ubuntu 14.04.1 LTS 在Ubuntu中nfs是作为系统中的一个模块就已经编译进os了,不用我们自己配置;并且已经是作为开机启动的服务,也不需要我们启动。而在Debian系统中nfs却并没有编译进系统,这时候我们就需要再linux_kernel中配置好这个模块了。 一、配置linux中的nfs模块在linux_kernel中的.config文件中或者make menuconfig然后在file System和Networking配置好nfs的相关配置,以使得nfs能顺利编译进系统 二、配置nfs的相关文件确定系统中已经有了nfs模块之后,我们就可以启动这个服务了。但是在启动之前,我们需要作出一些配置,配置是比较简单的,涉及三个文件: /etc/exports:这个文件是确定使用nfs服务共享出来的文件夹的目录文件,以及以何种权限共享出来的规定 /etc/hosts.deny:从字面上理解就知道是拒绝相关主机(以ip地址来区别的)连接此作为server端的。就是说这里是不许通过nfs连接到本主机的名单 /etc/hosts.allow:同上,这是允许连接的名单 以上三个文件就是nfs的配置文件了,即使Ubuntu已经安装了nfs服务,但是也没有给出任何配置,这些仍然是需要自己手动配置的 三、启动nfs服务配置后了服务之后启动nfs服务 /etc/init.d/目录下:nfs-kernel-server start 通过这个命令我们可以看到nfs服务将自己在/etc/exports中定义好的文件夹共享了出来。如果之后有修改exports文件,那么直接再在/etc/init.d/文件夹下重启nfs服务就ok: /etc/init.d/ 目录下:nfs-kernel-server restart 四、使用nfs服务启动nfs服务之后,我们就可以将自己的主机作为nfs服务的server主机将自己共享出来的目录让其他安装了nfs服务并开启的主机共享了。其他的主机在安装了nfs服务,并开启(不需要有任何配置,只需要开启就ok了)nfs服务之后,就可以查看作为nfs的server端共享目录了: 查看作为nfs的server端共享目录:(其他主机):#showmount -e 172.16.11.220 showmount命令在Ubuntu上没有预安装,所以sudo apt-get install showmount来安装上这个命令。后面的172.16.11.220是作为nfs的server的机子的ip地址 使用nfs服务mount上server主机:# mount 172.16.11.220:/home/wangzx/rootfs /home/usrname/nfs_test 这个命令就跟一般的mount命令没有什么不同了。mount+ip地址+:+server主机的共享目录 本地mount上去的目录。这样就基本ok了 五、示例(以Ubuntu 14.04为例)示例是以两台都装有Ubuntu14.04的机子开始的,意图:将A作为server,将B作为client,在A中配置好nfs的环境,然后用B去mount到A中通过nfs共享出来的目录。其中A机器的ip地址:172.16.11.220.B机器的ip地址是:1721.16.11.157 针对于A: 1、Ubuntu14.04中的nfs服务是已经预安装了的,所以我们不需要自己去安装 2、配置nfs文件 vim /etc/exports : 添加/home/wangzx/nfs *(rw,sync,no_root_squash,no_subtree_check) vim /etc/hosts.deny:
添加:portmap:ALL vim /etc/hosts.allow:
添加:portmap:172.16.11. 这个172.16.11.就是允许通过nfs连接上本主机的ip地址段,必须要符合这个地址段的ip才可以连接上来,当然是可以根据自己的需要修改的。以上修改参数之具体含义可以参照我先前转发的文章:http://blog.csdn.net/feishangbeijixing/article/details/41246705 3、启动nfs服务 进入:/etc/init.d/ 执行./nfs-kernel-server start显示服务启动成功 针对于B: 因为Ubuntu14.04中已经安装好了nfs服务,其实配套的有portmap之类的都有一并安装。所以我们只需要启动B的服务就可以了(Ubuntu14.04的nfs服务是开机自动启动的),不需要做其他的任何配置就可以。 在B机器的端口执行:mount 172.16.11.220:/home/wangzx/nfs nfs_test 就可以了。这样ip地址为172.16.11.220的A机器的文件目录/home/wangzx/nfs就mount到了本地的目录:/home/wangzx_mobile/nfs_test中了。 至此nfs的理论与实践就全部ok了 (责任编辑:IT) |