本文档只限于NFS基本配置,如果生产环境可能还需要根据具体需求添加相应参数

关于NFS是什么,用来做什么的解释,我这就不写了,我只写搭建过程

变量声明:

/nfs 主机共享目录,生产环境中一般为uploads等
10.0.0.101 nfs程序服务端
10.0.0.102 nfs程序挂载端
uid,gid为单独设置的2000,目的是服务端和挂载端的用户信息一致
添加的用户为nfs 这个在生产环境中一般与web服务使用同一个用户名
服务端:
1、安装nfs-utils rpcbind
   yum install nfs-utils rpcbind -y
2、启动相关软件 (必须先启动rpcbind,然后在启动nfs)
   /etc/init.d/rpcbind start
   /etc/init.d/nfs
3、本地测试程序是否启动
   rpcinfo -p localhost
   如果显示结果中有nfs字样,说明配置成功,nfs已经启动
4、编辑nfs配置文件(/etc/exports),在配置文件中添加如下字段
   /nfs 10.0.0.0/24(rw,sync,anonuid=2000,anongid=2000)
   字段说明
   本地目录   授权的IP断,也可以是单独IP(权限与参数)
   常用参数:rw 读写,ro 只读,sync状态同步(如果是只读,可以忽略不写),annouid和anongid目录对应的权限,一般用于挂载机器的权限一致
5、重载nfs
   /etc/init.d/nfs reload
6、本地查看状态,如果有显示,则说明成功
   showmount -e 10.0.0.101(本机IP,也可以使用localhost)
7、配置开机自启动,建议统一修改/etc/rc,local,添加如下字段
   #onboot rpcbind
   /etc/init.d/rpcbind start
   #onboot nfs
   /etc/init.d/nfs start
   或者通过cat追加
   cat >>/etc/rc.local<<EOF
   #onboot rpcbind
   /etc/init.d/rpcbind start
   #onboot nfs
   /etc/init.d/nfs start
   EOF

附加操作:
8、配置一直文件权限与所有者
   groupadd nfs -g 2000
   useradd nfs -u 2000 -g 2000 -M -s /sbin/nologin
   nfs用户可以不设密码,也可以按照上述配置,禁止登陆
9、修改共享目录的权限
   chown nfs.nfs /nfs


客户端:
1、安装rpcbind和nfs-utils-lib
   yum install nfs-untils-lib rpcbind -y
2、启动rpcbind
   /etc/init.d/rpcbind start
3、查看远端nfs状态,如果状态正常,则进行下面的挂载操作
   showmount -e 10.0.0.101
4、创建所需目录,并挂载
   mkdir /nfs 
   mount -t nfs 10.0.0.101:/nfs /nfs
5、配置开机自启动建议统一修改/etc/rc,local,添加如下字段
   #auto mount nfs
   mount -t nfs 10.0.0.101:/nfs nfs
   或者使用cat追加
   cat >>/etc.rc.local<<EOF
   #auto mount nfs
   mount -t nfs 10.0.0.101:/nfs nfs
   EOF
附加操作:
6、配置一直文件权限与所有者
   groupadd nfs -g 2000
   useradd nfs -u 2000 -g 2000 -M -s /sbin/nologin

   nfs用户可以不设密码,也可以按照上述配置,禁止登陆


至此,配置结束,可以分别在客户端创建,然后在服务端看是否有文件,然后服务端删除文件,查看客户端是否随之删除等操作,来进行简单的测试。


文章补充:例如用于网站用户上传数据的一致,可以在服务端和客户端直接使用web服务对应的用户,如www等


附在最后,近期换了工作,环境薪酬有了质的飞跃,所以踏实下心来,把过去一段时间学习与实际部署的东西做一下总结,方便日后学而时习之,达到能力巩固与提升的目的。

文中如有错误还请大牛指出。



转载于:https://blog.51cto.com/iyuyang/1631940