Linux搭建NFS网络共享文件服务器
参考文档:https://blog.csdn.net/qq_32368213/article/details/80448305
NFS共享文件服务器
主程序:rpcbind nfs-utils
主要配置文件:/etc/exports
NFS 文件系统维护指令:/usr/sbin/exportfs
分享资源的登录档:/var/lib/nfs/*tab
客户端查询服务器分享资源的指令:/usr/sbin/showmount
一、安装部署
server端
#查看是否已安装
~>rpm -qa | grep nfs
~>rpm -qa | grep rpcbind
#安装
~>yum install rpcbind nfs-utils -y
#自定义共享文件夹
~>chmod 666 /data/lys
#配置共享文件夹访问控制
~>vim /etc/exports
#添加
/data/lys client_IP(rw,sync,no_root_squash,no_all_squash)
#共享的目录 允许访问IP:可擦写,同步写入到硬盘,开放客户端使用root身份来操作服务器的文件系统,不隐藏子目录,不开放匿名用户
~>exportfs -r #配置文件变更后生效
~>service nfs restart #重启nfs
~>rpcinfo -p localhost #检查nfs服务生效,mountd nlockmgr端口随机
#配置固定端口:解决随机端口导致的防火墙策略问题
~>vim /etc/sysconfig/nfs
#添加
RQUOTAD_PORT=30001
LOCKD_TCPPORT=30002
LOCKD_UDPPORT=30002
MOUNTD_PORT=30003
STATD_PORT=30004
~>service nfs restart
#检查共享文件
~>showmount -e
#检查访问权限
~>exportfs
client端:
~>yum install rpcbind nfs-utils -y #安装
~>mount -t nfs server_IP:/data/lys /mnt #挂载
~>df -h #查看是否挂载成功
二、设置开机启动和自动挂载
1)安装完成之后在/etc/init.d/文件夹下 会生成相应的nfs和rpcbind文件
~>chkconfig rpcbind on
~>chkconfig nfs on
~>vim /etc/fstab
#添加
server_IP:/data/lys /mnt nfs defaults 0 0 #实现永久挂载
2)问题:在/etc/init.d/没有相关文件,使用chkconfig不能直接启动服务开机启动
问题:编辑fstab文件,会使主机开机时,自动检测挂载nfs文件,拖慢开机速度
问题:nfs服务端主机未开启,fstab中默认挂载硬盘后,系统无法启动
解决方法:编写脚本实现开机启动和自动挂载
server端
~>vim auto_Configuration.sh
#!/bin/bash
#chkconfig:2345 80 90
service rpcbinds start
service nfs start
~>chmod +x /etc/init.d/auto_Configuration.sh
~>chkconfig --add auto_Configuration.sh #添加该脚本到启动项中
client端
~>vim auto_Configuration.sh
#!/bin/sh
#chkconfig:2345 80 90
service rpcbinds start
service nfs start
mount -t nfs server_IP:/data/lys /mnt
~>chmod +x /etc/init.d/auto_Configuration.sh #添加该脚本到启动项中
~>chkconfig --add auto_Configuration.sh #添加该脚本到启动项中
#执行chkconfig可查看脚本是否添加到启动项
#chkconfig有几个等级:0:表示关机,
#1:表示单用户模式
#2:表示无网络链接多用户命令行模式
#3:表示有网络链接多用户命令行模式
#4:表示不可用情况
#5:表示带图形界面的多用户模式
#6:表示重新启动
#chkconfig:2345就代表在2345的等级下启动这个服务
#后面的80 90分别是启动优先级和关闭优先级