前言:
最近整理一些以前的学习笔记。
过去都是存储在本地,此次传到网络留待备用。\
NFS
- Network File System(网络文件系统)
- 用途: 为客户机提供其它主机共享使用的文件夹
- 服务:
- NFS,TCP/UDP 2049
- RPC=portmapper,TCP/UDP 111
- nlockmgr,随机端口
- mountd,随机端口
- 软件: nfs-utils
- 软件服务: nfs-server
- 共享配置文件: /etc/exports
- 格式: /共享路径 客户端地址(权限)
部署NFS共享
一、服务端
1.安装软件包
]# yum -y install nfs-utils
2.创建共享目录
]# mkdir /public
3.编辑共享配置文件
]# vim /etc/exports
/public *(ro) #允许所有主机只读此目录
#/共享目录 允许的主机(权限)
权限选项:
选项 | 描述 |
参考'man exports' | |
ro | (默认)只读权限 |
rw | 读写权限 |
sync | (默认)同步写,数据写入存储设备后返回成功信息 |
async | 异步写,数据在未完全写入存储设备前就返回成功信息,实际还在内存 |
wdelay | (默认)延迟写,将多个写操请求合并后写入硬盘,减少I/O次数,NFS非正常关闭数据可能丢失 |
no_wdelay | 与wdelay相反,不能与async同时生效,若NFS服务器主要收到小又不相关的请求,该选项会降低性能 |
subtree | (默认)若输出目录是一个子目录,则nfs服务器将检查其父目录的权限 |
no_subtree | 若输出目录是一个子目录,nfs服务器不检查其父目录的权限,可以提高效率 |
secure | (默认)限制客户端只能从小于1024的tcp/ip端口连接nfs服务器 |
insecure | 允许客户端从大于1024的tcp/ip端口连接服务器 |
用户映射选项 | |
root_squash | 客户端使用root账户访问时,服务器映射为服务器本地的匿名账号 |
no_root_squash | 与root_squash相反,保留客户端的root权限 |
all_squash | 将所有用户请求映射到nfsnobody匿名用户或用户组 |
no_all_squash | (默认)与all_squash相反,保留客户端的用户或组到服务器 |
anonuid=xxx | 将远程访问的所有用户都映射为匿名用户,并指定该用户为UID=xxx的本地用户 |
anongid=xxx | 将远程访问的所有用户组都映射为匿名用户组,并指定该匿名用户组为GID=xxx的本地用户组 |
4.启服务
]# systemctl restart nfs #启服务
]# systemctl enable nfs #设置自启
]# exportfs -rv #更新共享配置
5.防火墙(关闭或开放端口)
关闭防火墙
]# systemctl stop firewalld
]# systemctl disable firewalld
开放端口
]# rpcinfo -p #查看nfs使用的端口
]# vim /etc/sysconfig/nfs #设置固定端口
9 LOCKD_TCPPORT=32803 #取消注释,固定端口
11 LOCKD_UDPPORT=32769 #取消注释,固定端口
28 MOUNTD_PORT=892 #取消注释,固定端口
]# firewall-cmd --permanent --add-service={nfs,rpc-bind} #开放服务端口
]# firewall-cmd --permanent --add-port=32803/tcp --add-port=32769/udp #开放nlockmgr端口
]# firewall-cmd --permanent --add-port=892/tcp --add-port=892/udp #开放mountd端口
]# firewall-cmd --reload #重读防火墙配置
]# systemctl restart nfs #重启nfs服务
二、客户端
1.安装软件
]# yum -y install nfs-utils #提供showmount命令
2.创建挂载点
]# mkdir /public
3.查看网络共享
showmount命令
]# showmount -e 192.168.4.11
# 命令 -e 服务器ip地址
4.挂载
]# mount 192.168.4.11:/public /public #手动挂载
]# vim /etc/fstab #自动挂载
...
192.168.4.11:public /public nfs defaults,_netdev 0 0
#设备点 挂载点 文件格式 挂载参数
]# mount -a #检测并挂载
]# df -h #确认挂载
挂载参数选项:
]# man nfs #参考man帮助查看