咨询1
咨询2
交流群
电话

16-CentOS7服务器搭建-NFS服务器文件共享

文档 > 服务器 2018-07-16 09:07 阅读

NFS服务器文件共享

多台服务器做集群时,由于上传时只在某一个服务器上传文件附件,会出现其他服务器无法找到上传的附件。这时需要共享附件上传的文件夹,以便所有集群的服务器都可以访问到上传的附件。

参考资料:http://linux.vbird.org/linux_server/0330nfs.php

服务端

要把防火墙关闭,因为NFS端口规则很复杂,不好设置。

安装nfs

yum install nfs-utils rpcbind

配置nfs: vim /etc/exports

/data/share 192.168.0.10(rw,sync,all_squash)

其中ip地址是指可以访问这个共享的IP,如果允许多个IP访问,可以使用192.168.0.*

共享多个文件夹可以设置多行。

关于权限

共享目录的用户为nfsnobody,可以设置(rw,sync,all_squash,anonuid=xxx,anongid=xxx)

或者设定共享目录权限为777: chmod 777 /data/share

# 修改exports后让配置生效
exportfs -arv
# 启动rpcbind服务
systemctl start rpcbind
systemctl enable rpcbind
# 启动nfs服务
systemctl start nfs
systemctl enable nfs
# 检查是否配置好
showmount -e

客户端

# 启动rpcbind服务
systemctl start rpcbind
systemctl enable rpcbind
showmount -e 192.168.0.20
# 挂载
mount -t nfs 192.168.0.20:/data/share /mnt/nfs
# 卸载
umount /mnt/share

开机挂载

修改文件vim /etc/rc.d/rc.local,加入以下代码:

mount -t nfs -o nosuid,noexec,nodev,rw,bg,soft,rsize=32768,wsize=32768 192.168.0.20:/data/share /mnt/nfs

如果该文件没有执行权限,则需增加执行权限:

chmod +x /etc/rc.d/rc.local

自动挂载autofs

自动挂载在没有使用的时候看不见文件夹,只有在使用或者用命令进入这个文件夹时,才会自动挂载并显示。因此用来做部署不是很方便。

开机挂载和自动挂载二选一,不能同时使用。用来做部署一般使用开机挂载,如果只是简单的文件共享,可以用autofs。

# 安装
yum install autofs

配置文件vim /etc/auto.master,加入代码:

/mnt/nfs    /etc/auto.nfs

创建文件vim /etc/auto.nfs,内容如下:

public   -rw,bg,soft,rsize=32768,wsize=32768  192.168.0.20:/data/share

对应的挂载目录是/mnt/nfs/public,不要手动创建这些文件夹,autofs会自动处理。

# 启动
systemctl start autofs
# 开启自启动
systemctl enable autofs

# 停止
systemctl stop autofs
# 关闭自启动
systemctl disable autofs