nfs文件共享服务器精讲
Posted zhang25yun
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nfs文件共享服务器精讲相关的知识,希望对你有一定的参考价值。
3.2 NFS安装部署:
服务器和客户端都关闭防火墙,装好nfs服务组件:
3.2.1 配置服务端:
编辑/etc/exports文件
导出(广播)编辑的文件,并启动rpc和nfs服务
nfs服务端:192.168.2.103
nfs客户端:192.168.2.104
# 关闭防火墙:
systemctl stop firewalld && systemctl disable firewalld
# 临时关闭selinux:
setenforce 0
# 永久关闭selinux:
sed -i \'s/=enforcring/=disabled/\' /etc/selinux/config
# 安装nfs服务组件:
yum -y intall nfs-utils
3.2.1 配置服务端:
编辑/etc/exports文件
导出(广播)编辑的文件,并启动rpc和nfs服务
/data/jfedu 192.168.2.0/24(rw,sync)
# 格式:
# /data/jfedu 要共享的目录,需要存在
# 192.168.75.0/24 谁能挂载使用,可以是网段,也可以指定具体ip
# (rw,sync) 挂载的一些参数,rw表示挂载为可读可写,sync表示同步 systemctl start rpcbind
systemctl start nfs
exportfs -r
3.2.2 配置客户端:
可用showmount搜索网络中可用的共享文件
showmount -e 192.168.2.103
Export list for 192.168.2.103:
/data/jfedu 192.168.2.0/24
创建目录,用于挂载
mkdir /mnt/nfs
挂载
mount -t nfs 192.168.2.103:/data/jfedu /mnt/nfs
#推荐使用:
mount -t nfs -o soft,timeo=1 192.168.2.103:/data/jfedu /mnt/nfs soft: 软挂载,遇到报错会终止挂载,并返回信息,默认是硬挂载,一直尝试
挂载。
timeo: 超时时间,如果不设置,一直链接,可以设置小点
挂载完成之后,进入目录,可能会发现无法对目录中的文件进行修改。
这主要是因为客户端访问服务器时,身份被压缩成nobody,相对服务器文
件系统来说,就是其他用户。所以要想编辑,需要在服务端对文件授权或
者更改exports文件,设置no_root_squash(不压缩客户端root身份)。
3.3 解读exports文件:
[root@localhost ~]# exportfs -v
/data/jfedu
192.168.75.0/24(sync,wdelay,hide,no_subtree_check,sec=sys,
rw,secure,no_root_squash,no_all_squash)
其中:
rw:可读可写
ro:仅可读
sync:是指数据同步写入内存和磁盘
root_squash:如果客户端用root身份访问,则被压缩成nobody,权限也将受
到限制。
no_root_squash:也就是不压缩,客户端使用root身份登录,全有所有权限,
很危险。
all_squash:不管访问者是什么身份,包括root,全部压缩至匿名用户。
no_all_squash:保留访问用户的身份uid以及gid,一般只能查看,不能修
改,权限问题,但是可以强制保存。
3.4 报错处理:
3.4.1 客户端挂载时报错bad superblock:
[root@node2 ~]# mount 192.168.75.121:/data/jfedu /mnt
mount: wrong fs type, bad option, bad superblock on
192.168.75.121:/data/jfedu,
missing codepage or helper program, or other error
(for several filesystems (e.g. nfs, cifs) you might
need a /sbin/mount.<type> helper program)
# 解决办法:
yum install nfs-utils -y
3.4.2 客户端挂载时报错access denied:.
[root@node2 ~]# mount 192.168.75.121:/data/jfedu /mnt
mount.nfs: access denied by server while mounting
192.168.75.121:/data/jfedu
ps: 客户端IP不在/etc/exports文件中,会报此错。
3.4.3 卸载时报错:
umount.nfs4: /data/jfedu: device is busy
# 解决办法:
umount -l /data/jfedu 强行解除挂载
或者使用
fuser -m /data/jfedu 将会显示使用这个模块的pid
fuser -mk /data/jfedu 将会直接kill那个pid
以上是关于nfs文件共享服务器精讲的主要内容,如果未能解决你的问题,请参考以下文章