红联Linux门户
Linux帮助

CentOS 6.3 NFS部署与安装

发布时间:2015-04-20 16:24:52来源:linux网站作者:yanghuawu

【环境】

服务器:10.1.10.86

客户端:10.1.1.160 ... ... ...


一、安装NFS

NFS服务器安装配置:(在CentOS6.3当中,portmap服务由rpcbind负责)

[root@NFS~]# yum -y install nfs-utils rpcbind

NFS客户端安装配置:(安装无需启动NFS服务,直接挂目录)

[root@Client~]# yum -y install nfs-utils


二、服务器端配置

1、创建共享目录:

[root@NFS~]# mkdir /data/nfs_share

2、NFS文件配置:

[root@NFS~]# vim /etc/exports

#增加一行:

/data/nfs_share10.1.1.160(rw,sync,no_root_squash) *(ro) (解释:挂载/data/nfs_share目 录,只有160主机,读写权限,其它只有只读权限;)

:wq保存退出;

【说明】

 

/data/nfs_share

表示共享服务器上的根目录

10.1.0.0/16

允许访问的主机(可以是一个IP也可以是一个IP段)

rw

读写

ro

只读

sync

同步模式,内存中数据时时写入磁盘

async

不同步,把内存中数据定期写入磁盘中

no_root_squash

root用户具有根目录的完全管理访问权限

no_all_squash

保留共享文件的UIDGID(默认)

root_squash

root用户的所有请求映射成如anonymous用户一样的权限(默认)

all_squash

共享文件的UIDGID映射匿名用户anonymous,适合公用目录。

anonuid=xxx

指定NFS服务器/etc/passwd文件中匿名用户的UID

anongid=xxx

指定NFS服务器/etc/passwd文件中匿名用户的GID

使配置生效:

[root@NFS~]# exportfs -r

3、启动:

[root@NFS~]# /etc/init.d/rpcbind start

[root@NFS~]# /etc/init.d/nfs start

[root@NFS~]# chkconfig nfs on

[root@NFS~]# chkconfig rpcbind on


三、客户端挂载:

1、创建需要挂载的目录:

[root@Client~]# mkdir /home/zl

2、测试挂载:

[root@Client~]# showmount -e 10.1.10.86

Exportlist for 10.1.10.86:

/data/nfs_share(everyone)

-a
 
以HostName :Directory格式显示所有远程客户机安装,其中HostName是客户机的名称,Directory是远程安装的目录路径名

-d
 
仅列出客户机远程安装的目录

-e
 
显示导出目录的列表
 
3、挂载:

[root@Client~]# mount -t nfs 10.1.10.86:/data/nfs_share /home/zl

[root@Client~]# mount

10.1.10.86:/data/nfs_share on /home/zltype nfs (rw,vers=4,addr=10.1.10.86,clientaddr=10.1.1.160)

nfsd on/proc/fs/nfsd type nfsd (rw)

如果信息如上显示则挂载成功!

4、测试:

客户端创建一个文件夹/home/zl

[root@Clientzl]# mkdir aa

[root@Clientzl]# ll

total4

drwxr-xr-x2 root root 4096 Dec 18 12:00 aa

服务端检查:

[root@NFSdata]# ll nfs_share/

total4

drwxr-xr-x2 root root 4096 Dec 18 12:00 aa

挂载成功!


四、解除挂载

[root@Client~]# umount /home/zl

问题:

[root@Clientzl]# umount /home/zl

umount.nfs:/home/zl: device is busy

解决方法:

退出到当前目录,可以解决。


五、开机启动自动挂载nfs文件系统

【格式】

serverIP:/nfs(服务器目录) /mnt/nfs(挂载目录) nfs defaults 0 0

[root@Client~]# vi /etc/fstab

10.1.10.86:/data/nfs_share /data/zl nfs defaults 0 0


六、NFS端口

rpc服务器启动,被rpc客户调用的过程:

a. 系统引导时,端口映射器首先启动,创建tcp和udp端点,被动打开tcp111端口,在udp111端口等待数据;

b. rpc服务器程序启动时,为所支持的程序的每一个版本绑定一个临时端口号,在端口映射器 注册;

c. rpc客户程序启动时,根据参数在端口映射器中查找指定过程绑定的端口号;

d. 如果是udp,rpc客户根据返回的端口号发送rpc调用报文;如果是tcp,rpc客户先在返回的端口号上执行主动打开,再发送rpc调用报文,大多数实现将NFS指定udp端口号2049。

[root@localhost~]# netstat -tunl |grep "111"

tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN

tcp 0 0:::111 :::* LISTEN

udp 0 00.0.0.0:111 0.0.0.0:*

udp 0 0 :::111 :::*

[root@localhost~]# netstat -tunl |grep "2049"

tcp 0 00.0.0.0:2049 0.0.0.0:* LISTEN

tcp 0 0 :::2049 :::* LISTEN

udp 0 0 0.0.0.0:2049 0.0.0.0:*

udp 0 0 :::2049