首页 > 代码库 > 搭建nfs共享存储服务之二nfs服务端配置语法及配置实战详解

搭建nfs共享存储服务之二nfs服务端配置语法及配置实战详解

1.1.NFS服务端配置文件路径为: /etc/exports,并且默认为空,需要用户自行配置。

/etc/exports文件配置格式为:

NFS共享的目录 NFS客户端地址1(参数1,参数2...)客户端地址2(参数1,参数2)


1.NFS共享的目录:为NFS服务端要共享的实际目录,要用绝对路径,如(/data),注意共享目录的本地权限,如果需要读写共享,一点要让本地目录可以被NFS客户端的用户(nfsnobody)读写。

2.NFS客户端地址:为NFS服务端授权的可访共享目录的NFS客户端地址,可以为单独的IP地址或主机名、域名等,也可以为整个网段地址,还可以用“”*“”来匹配所有客户端服务器,这里所谓的客户端一般来说是前端的业务服务器。例如:web服务。

3.权限参数集:对授权的NFS客户端的访问权限设置。


技术分享

2.创建一个/data目录,这里-p意思代表如果存在/data不提示,如果不存在直接创建。

[root@oldboy ~]# mkdir /data -p

所以如果希望让客户端访问nfs服务,首先让nfsnobody可以访问/data,假设/data可写,在不变权限状态下如何可写?chown -R代表包括目录/data里面的所有文件和目录

[root@oldboy ~]# chown -R nfsnobody.nfsnobody /data
[root@oldboy ~]# ls -ld /data
drwxr-xr-x 2 nfsnobody nfsnobody 4096 Jul 30 21:42 /data


3.在nfs服务器端。

vi /etc/exports写入如下内容:

#share /data by oldboy for bingbing at 20160423
/data 172.16.1.0/24(rw,sync)

[root@oldboy ~]# cat /etc/exports
#share /data by oldboy for bingbing at 20160423
/data 172.16.1.0/24(rw,sync)


rm可读写,sync直接写入磁盘,不加sync写入缓存。不是特别大并发用sync,如果大并发用async


4. 步骤1,2,3前提是:

/etc/init.d/rpcbind status 检查rpcbind有没有启动

/etc/init.d/nfs status 检查nfs服务有没有启动

rpcinfo -p localhost  确认localhost有注册的端口。


5.步骤1,2,3配置完成后让生效.reload叫做优雅,平滑,重启服务器。

/etc/init.d/nfs reload相当于exportfs -rv,意思是修改配置文件平滑生效。

[root@oldboy ~]# /etc/init.d/nfs reload

最后shownount -e出现如下提示表示服务端配置成功了。

[root@oldboy ~]# showmount -e 172.16.1.31
Export list for 172.16.1.31:
/data 172.16.1.0/24

6. 放到开机自启动中。

[root@web01 ~]# echo "mount -t nfs 172.16.1.31:/data /mnt">>/etc/rc.local
[root@web01 ~]# tail -1 /etc/rc.local
mount -t nfs 172.16.1.31:/data /mnt
[root@web01 ~]#


总结NFS客户端

  1. 检查系统版本

hostname nfsclient

cat /etc/redhat-release

uname -u

uname -m

2.安装rpc服务并检查

rpm -qa nfs-utils rpcbind

yum groupinstall "NFS file server" -y(安装方法和yum install nfs-utils rpcbind -y)

rpm -qa nfs-utils rpcbind

3.启动rpc服务并检查

/etc/init.d/rpcbind start

/etc/init.d/rpcbind status

4.设置开机自启动并检查

chkconfig rpcbind on

chkconfig --list rpcbind

5.检查服务器的NFS是否ok

showmount -e 172.16.1.31

排查故障:

(1)物理故障:ping 172.16.1.31

(2)端口是否开通:telnet 172.16.1.31 111注意:防火墙是否开启阻止

6.挂载并测试

mount -t nfs 172.16.1.31:/data /mnt

cd /mnt

ls -l

touch oldboy.log

ls il

echo "mount -t nfs 172.16.1.31:/data /mnt">>/etc/rc.local

提示:也可以放入/etc/fstab,需要注意一些情况。


NFS排错:

1.前提:NFS原理以及不熟的步骤很熟练

2.现在客户端排查

ping server_ip

telnet server_ip 111

showmount -e server_ip

mount












本文出自 “sandshell” 博客,请务必保留此出处http://sandshell.blog.51cto.com/9055959/1954017

搭建nfs共享存储服务之二nfs服务端配置语法及配置实战详解