配置nfs服务

作者:Garany 发布于:2016-08-04 分类:破万卷书
网络文件系统(Network File System,NFS)功能是通过网络让不同的机器、不同的操作系统能够彼此分享数据,让应用程序在客户端通过网络访问位于服务器磁盘中的数据。

系统:CentOS 6.5
nfs服务器ip:192.168.10.200
nfs客户端ip:192.168.10.11

服务器端
1.#安装
# yum install nfs-utils rpcbind
安装完以后nfs服务运行需要使用5个端口,其中有4个端口是动态的,所以如果服务器和客户端之间有iptables,就要先把这4个动态端口设置成静态的,然后加入进防火墙规则里,需要修改的端口有如下四个:

2.#编辑nfs配置文件
# vim /etc/sysconfig/nfs
LOCKD_TCPPORT=30001    #TCP锁使用端口
LOCKD_UDPPORT=30002    #UDP锁使用端口
MOUNTD_PORT=30003    #挂载使用端口
STATD_PORT=30004    #状态使用端口
3.#以上四个端口,还有nfs协议端口2049以及rpc的111端口要通过iptables。
-A INPUT -m state --state NEW -m tcp -p tcp --dport 111-j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 2049-j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 30001-j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 30002-j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 30003-j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 30004-j ACCEPT

4.#新建/data目录,并touch一个测试文件test
# mkdir /data
# touch /data/tset

5.#编辑配置文件,默认是空的
# vim /etc/exports
#把/data目录共享给192.168.10.0的所有主机,使用默认参数(ro,sync,wdelay,root_squash)
/data 192.168.1.0/24(ro,sync,wdelay,root_squash)

e.g
/tmp  *(rw,no_root_squash)
#任何人都可以用/tmp
/home/public  192.168.0.0/24(rw)    *(ro)
#只有192.168.0.0/24可读写/home/public 
/home/test    192.168.0.100(rw)
#只有192.168.0.100才能对/home/test目录读写
/home/linux   *.linux.org(rw,all_squash,anonuid=40,anongid=40)
#允许*.linux.org主机读取/home/linux。单身在写入时把文件uid变成40

#参数详解
ro  #只读共享    rw  #读写共享    sync  #同步写操作    async #异步写操作    wdelay #延迟写操作    
root_squash #屏蔽远程root权限    no_root_squash #不屏蔽远程root权限    all_squash #屏蔽所有远程用户的权限

6.#启动服务,加入开机启动。
# service rpcbind start
# service nfs start

# chkconfig nfs on
# chkconfig rpcbind on

客户端
1.#安装
# yum install nfs-utils

2.#查看nfs服务器共享出来的资源
# showmount -e 192.168.10.200

3.#挂载nfs服务器的共享目录到/mnt/
# mount -t nfs 192.168.10.200:/data /mnt/

4.#检查是否读取到了服务器的共享文件,不出意外就可以看到有个test文件
# ls /mnt/

5.#开机自动挂载
# echo "192.168.10.200:/data /mnt nfs defaults 0 0">>/etc/fstab

我来说说