基于NSF服务共享服务器
实验环境
192.168.160.129 nsf服务器
129配置
启动nsf服务
systemctl start nsf.server
创建文件夹,并放入实验数据
mkdir nfsdir{1,2}
cp /etc/fstab nfsdir1/f1.txt
cp /etc/fstab nfsdir2/f2.txt
NFS配置文件
vim /etc/exports
/data/nfsdir1 *(rw)
#把nfsdir1共享给所有主机
通过showmount命令可以查看是否共享成功
showmount -e 192.168.160.129
因为其他网络设备root账号获取的时候被压榨,用户变成nfsnobody,所以需要设置权限给这个用户
setfacl -m u:nfsnobody:rwx nfsdir1
NFS服务
配置文件
/etc/exports
/etc/exports.d/*.exports
日志
/var/lib/nfs/
NFS配置文件格式
/dir 主机1(opt1,opt2) 主机2(opt1,opt2)
主机格式
单个主机:ipv4,ipv6,FQDN
IP networks:两种掩码格式均支持
172.18.0.0/255.255.0.0
172.18.0.0/16
wildcards:主机名通配,例如*.magedu.com,IP不可以
netgroups:NIS域的主机组,@group_name
anonymous:表示使用*通配所有客户端
选项内容
默认选项:(ro,sync,root_squash,no_all_squash)
ro,rw 只读和读写
async 异步,数据变化后不立即写磁盘,性能高
sync(1.0.0后为默认)同步,数据在请求时立即写入共享
no_all_squash (默认)保留共享文件的UID和GID
all_squash 所有远程用户(包括root)都变成nfsnobody
root_squash (默认)远程root映射为nfsnobody,UID为65534,早期版本是4294967294 (nfsnobody)
no_root_squash 远程root映射成root用户
anonuid和anongid 指明匿名用户映射为特定用户UID和组GID,而非nfsnobody,可配合all_squash使用
NFS工具
rpcinfo
rpcinfo -p hostname 显示本地系统中注册到rpcbind协议版本2的所有RPC服务
rpcinfo –s hostname 查看RPC注册程序
exportfs
–v 查看本机所有NFS共享
–r 重读配置文件,并共享目录
–a 输出本机所有共享
–au 停止本机所有共享
showmount
showmount -e hostname 查看NFS是否成功
NFS相关的挂载选项
fg(默认)前台挂载,bg后台挂载
hard(默认)持续请求,soft 非持续请求
intr 和hard配合,请求可中断
rsize和wsize 一次读和写数据最大字节数,rsize=32768
_netdev 无网络不挂载
基于安全考虑,建议使用nosuid,nodev,noexec挂载选项
示例
mount -o rw,nosuid,fg,hard,intr 192.168.160.129:/data/dfsdir /mnt/nfs/
开机挂载:/etc/fstab
vim /etc/fstab
192.168.160.129:/data/nfsdir /mnt/nfs nfs defaults 0 0
mount -a