14.1 -14.5 nfs文件共享搭建
文件共享需要使用的是nfs-utils包,以及rpcbind。但是在安装nfs-untils时rpcbind也会一起自动安装。
yum install -y nfs-utils //安装nfs和rpcbind
vim /etc/exports //加入如下内容
/home/nfstestdir 192.168.27.129(rw,sync,all_squash,anonuid=1000,anongid=1000)
service nfs start //启动nfs服务,rpcbind会自动启动,不用单独操作
systemctl enable //设置开机启动
在客户端192.168.27.129上操作
yum install -y nfs-utils
showmount -e 192.168.27.128 //服务端ip地址
Export list for 192.168.27.128:
/home/nfstestdir 192.168.27.129
mount -t nfs 192.168.27.128:/home/nfstestdir /mnt/ //挂载
[root@cent02 ~]# df -h //挂载成功
文件系统 容量 已用 可用 已用% 挂载点
/run
tmpfs 1.4G 0 1.4G 0% /sys/fs/cgroup
/dev/sda1 197M 152M 46M 77% /boot
192.168.27.128:/home/nfstestdir 22G 8.4G 14G 39% /mnt
chmod 777 /home/nfstestdir //为了方便操作,更全文件夹权限为777
开机自动挂载
但是这种情况下,如果客户端重启,那么挂载的文件夹就会消失。所以这时我们可以通过更改/etc/fstab文件做开机自动挂载。
vim /etc/fstab //写入如下内容
192.168.27.128:/home/nfstestdir /mnt/ nfs defaults 0 0
服务端已经通过systemctl enable nfs 开启了开机启动
变更重载exportfs
/etc/exports文件夹的内容可能发生变更。变更后一般需要重启nfs服务才能生效。但是如果重启时,有客户端正在读写文件,那么客户端的进程就会被挂起,这是很严重的问题。
所以这时我们可以用exportfs命令重载nfs服务。相当于reload命令。
exportfs常用的选项有:
-a 全部挂载或者卸载
-r 重新挂载
-u 卸载一个目录
-v 显示共享的目录
当更改/etc/exports后如果不重启nfs或者exportfs -ar,在客户端showmount时不会有变化。如果exportfs -ar,在客户端showmount就可以看到变更后的内容。
属主nobody解决
nfs4和centos6之间会出现新建文件属主为nobody的情况,这时可以 重新挂载,并选择nfs3解决此问题。
方法1:
在客户端上先卸载挂载,然后重载
mount -t nfs -o nfsvers=3 192.168.27.128:/home/nfstestdir /mnt/
方法2:
卸载重载一次完成
mount -t nfs -oremount,nfsvers=3 192.168.27.128:/home/nfstestdir /mnt/
-o nolock选项的作用:nolock — Disables file locking. This setting is occasionally required when connecting to older NFS servers.