Linux - 建设篇
第一章 Linux部署NFS服务
下章内容
Linux虚拟机安装NFS服务
rpm -qa | grep nfs # rpm查询nfs服务是否安装
rpm -qa | grep rpcbind # rpm查询rpc服务是否安装
yum list | grep nfs-utils # yum查询nfs服务是否安装
yum list | grep rpcbind # yum查询rpc服务是否安装
yum -y install nfs-utils rpcbind # 安装NFS和RPC的服务
vim /etc/exports # 编辑nfs服务的映射表
/data/nfs 10.0.50.0/24(rw,sync,root_squash,all_squash)
nfs映射表常见的参数
参数值 | 内容说明 |
---|---|
rw ro | 该目录分享的权限是可擦写 (read-write) 或只读 (read-only),但最终能不能读写,还是与文件系统的 rwx 及身份有关 |
sync async | 代表数据会同步写入到内存与硬盘中,async 则代表数据会先暂存于内存当中,而非直接写入硬盘 |
no_root_squash root_squash | 客户端使用 NFS 文件系统的账号若为 root 时,系统该如何判断这个账号的身份?预设的情况下,客户端 root 的身份会由 root_squash 的设定压缩成 nfsnobody, 如此对服务器的系统会较有保障。但如果想要开放客户端使用 root 身份来操作服务器的文件系统,那么这里就得要开 no_root_squash |
all_squash no_all_squash | 不论登入 NFS 的使用者身份为何, 身份都会被压缩成为匿名用户,即 nobody(nfsnobody) |
anonuid anongid | anon 意指 anonymous (匿名者) 前面关于 *_squash 提到的匿名用户的 UID 设定值,通常为 nobody(nfsnobody),但可以自行设定这个 UID 的值。这个 UID 必需存在于 /etc/passwd , anonuid 指的是 UID 而 anongid 是群组的 GID |
exportfs -arv # 使能nfs配置生效
systemctl enable rpcbind && systemctl start rpcbind # 开机自启和立即启动rpc服务
systemctl enable nfs && systemctl start nfs # 开机自启和立即启动nfs服务
rpcinfo -p localhost # 查看 RPC 服务的注册状况
program vers proto port service
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
100024 1 udp 54371 status
100024 1 tcp 56792 status
100005 1 udp 20048 mountd
100005 1 tcp 20048 mountd
100005 2 udp 20048 mountd
100005 2 tcp 20048 mountd
100005 3 udp 20048 mountd
100005 3 tcp 20048 mountd
100003 3 tcp 2049 nfs
100003 4 tcp 2049 nfs
100227 3 tcp 2049 nfs_acl
100003 3 udp 2049 nfs
100003 4 udp 2049 nfs
100227 3 udp 2049 nfs_acl
100021 1 udp 54362 nlockmgr
100021 3 udp 54362 nlockmgr
100021 4 udp 54362 nlockmgr
100021 1 tcp 39571 nlockmgr
100021 3 tcp 39571 nlockmgr
100021 4 tcp 39571 nlockmgr
showmount -e localhost # showmount令来查阅是否可以联机
Export list for localhost:
/data/nfs 10.0.50.0/24
选项与参数:
-a :显示目前主机与客户端的 NFS 联机分享的状态;
-e :显示某部主机的 /etc/exports 所分享的目录数据。
客户端配置
安装nfs-utils客户端
yum -y install nfs-utils
创建挂载目录
mkdir -p /tmp/nfs
查看服务器抛出的共享目录信息
showmount -e 10.0.50.254
挂载服务器共享目录
mount -t nfs 10.0.50.254:/data/nfs /tmp/nfs
查看挂载结果
df -h
10.0.50.254:/data/nfs xxG xxG xxG xx% /tmp/nfs
卸载已挂在的NFS
umount /tmp/nfs