GitHub地址: https://github.com/QingyaFan/effective-backend
一、是什么
NFS是网络文件系统,用于在多个主机之间进行文件共享。实际的物理文件本身存储在nfs server的共享目录里,nfs client将本地某个目录挂载到nfs server共享的目录,访问本地的挂载目录,实际上都是通过网络访问nfs server的目录,从而达到共享文件的目的。
注:如果是docker需要挂载nfs,那么宿主机要像其它虚拟机一样安装nfs客户端,docker容器才能正常挂载。
二、安装配置
注:Centos 7.4环境
2.1 nfs server
安装与启动
安装:
yum install nfs-utils
启动:
systemctl start rpcbind
systemctl start nfs
systemctl start nfslock
- 设置开机启动:
chkconfig enable rpcbind
chkconfig enable nfs
chkconfig enable nfslock
配置共享目录
控制nfs server的共享目录的配置文件是 /etc/exports
,格式分为两列,第一列表示共享的目录,第二列表示该目录的权限控制。更改完成后,重启nfs即可生效。
/tmp/nfs/folder1 *(rw,no_root_squash)
/tmp/nfs/folder2 *(rw,no_root_squash)
通过exportfs
查看共享的目录;在nfs client机器上通过showmount -e ip
查看nfs server的共享目录;如果出错,可以通过/var/log/messages
查看出错日志。
2.2 客户端配置
- 安装启动
yum install nfs-utils
systemctl start nfs
- 挂载nfs server的共享目录:
sudo mount -t nfs serverIp:/share/path /local/mount/path
如果mount报错: mount.nfs: No route to host
,关闭防火墙可以解决。
- 开机自动挂载
挂载的目录如果服务器宕机或重启都会丢失,我们需要配置开机挂载。
nfs_server_ip:/tmp/nfs/folder /local/mount/path nfs defaults 0 0