Ubuntu上nfs的安装配置

来源:互联网 发布:ios手机解压缩软件 编辑:程序博客网 时间:2024/04/23 17:35

1,安装nfs服务版

sudo apt-get install nfs-kernel-server

 

2,重新配置portmap 服务,修改/etc/hosts.deny 和/etc/hosts.allow 配置文件,重启

portmap 服务

 

sudo dpkg-reconfigure portmap

#对Should portmap be bound to the loopback address? 选N.

 

设定拒绝portmap服务的主机

sudo vi /etc/hosts.deny

 

#portmap:ALL

#lockd:ALL

#mountd:ALL

#rquotad:ALL

#statd:ALL

 

设定允许portmap服务的主机

sudo vi /etc/hosts.allow

 

#portmap: 192.168.1.

#lockd: 192.168.1.

#rquotad: 192.168.1.

#mountd: 192.168.1.

#statd: 192.168.1.

 

sudo service portmap restart

 

3,修改NFS 服务的配置文件/etc/exports,添加服务目录和配置,重新导入配置

sudo vi /etc/exports

 

#/home/tekkaman/development/share

192.168.1.0/24(rw,nohide,insecure,no_wdelay,no_root_squash,no_subtree_check,sync)

#特别要注意上面的IP的形式,以前是形如192.168.1.*,现在是IP/掩码为数的形式。用旧的格式可能会

出问题

#具体的说明,建议看man手册: man exports

 

sudo exportfs -r

 

4,重启NFS 服务,并检查可挂载的目录

sudo /etc/init.d/nfs-kernel-server restart

 

showmount -e 127.0.0.1

 

5,在本地挂载测试

mount -t nfs 192.168.1.20:/nfs/public /mnt/nfs

 

 

 

 

NFS(Network File System, 网络文件系统)可以通过网络将分享不同主机(不同的OS)的目录——可以通过NFS挂载远程主机的目录, 访问该目录就像访问本地目录一样!
一般而言, 使用nfs能够方便地使各unix-like系统之间实现共享. 但如果需要在unix-like和windows系统之间共享, 就得使用samba了!
NFS运行在SUN的RPC(Remote Procedure Call, 远程过程调用)基础上, RPC定义了一种与系统无关的方法来实现进程间通信. 由此, NFS server也可以看作是RPC server.
   
正因为NFS是一个RPC服务程序, 所以在使用它之前, 先要映射好端口——通过portmap设定. 比如: 某个NFS client发起NFS服务请求时, 它需要先得到一个端口(port). 所以它先通过portmap得到port number. (不仅NFS, 所有的RPC服务程序启动之前, 都需要设定好portmap)

 与NFS相关的几个文件, 命令
1, /etc/exports
    对NFS卷的访问是由exports来批准, 它枚举了若干有权访问NFS服务器上文件系统的主机名.

2, /sbin/exportfs
    维护NFS的资源共享. 可以通过它重新设定 /etc/exports 的共享目录, 卸载NFS Server共享的目录或者重新共享等.
  
3, /usr/sbin/showmount
    用在 NFS Server 端,而 showmount 则主要用在 Client 端. showmount 可以用來查看 NFS 共享的目录资源.

4, /var/lib/nfs/xtab
    NFS的记录文档: 通过它可以查看有哪些Client 连接到NFS主机的记录.

下面这几个并不直接负责NFS, 实际上它们负责所有的RPC
5, /etc/default/portmap
    实际上, portmap负责映射所有的RPC服务端口, 它的内容非常非常之简单(后面详述)

6, /etc/hosts.deny
    设定拒绝portmap服务的主机

7, /etc/hosts.allow
    设定允许portmap服务的主机