NFS共享储存服务
NFS共享
- NFS (Network File System)网络文件系统
- 依赖于RPC (远端过程调用)
- 需安装nfs-utils、rpcbind软件包
- 系统服务:nfs、rpcbind
- 共享配置文件:/etc/exports
NFS是一种基于TCP/IP传输的网络文件系统协议。通过使用NFS协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源。
对于大多数负载均衡群集来说,使用NFS协议来共享数据存储是比较常见的做法,NFS也是NAS存储设备必然支持的一种协议。但是由于NFS没有用户认证机制,而且数据在网络上明文传输,所以安全性很差一般只能在局域网中使用。
NFS服务的实现依赖于RPC(RemoteProcessCall,远端过程调用)机制,以完成远程到本地的映射过程。所以需要安装nfs-utils、 rpcbind软件包来提供NFS共享服务,前者用于NFS共享发布和访问,后者用于RPC支持。
1 NFS的配置文件为/etc/exports 2 格式为:共享的目录位置客户机地址(权限选项)
服务器使用NFS发布共享资源
1 安装 nfs-utils、rpcbind 软件包 2 3 rpm -q rpcbind nfs-utils 4 yum -y install nfs-utils rpcbind

1 设置共享目录 2 3 mkdir /share 4 chmod 777 /share 5 6 vim /etc/exports 7 8 /share 192.168.208.0/24 (rw, sync,no_ root_ squash) 9 /var/ftp/pub 192.168.4.11 (ro) 192.168.4.110 (rw) 10 * /share (rw, sync) 11 12 #客户机地址可以是主机名、IP地址、网段地址,允许使用“*”、"?" 通配符 13 14 #"rw”表示允许读写,“ro” 表示为只读 15 16 #sync:表示同步写入到内存与硬盘中 17 18 #no_root_squash : 表示当客户机以root身份访问时赋予本地root权限 (默认是root_squash) 19 20 #root_squash : 表示客户机用root用户访问该共享目录时,将root用户映射成匿名用户
1 启动NFS服务程序 2 3 #手动加载NFS共享服务时,应该先启动rpcbind,再启动nfs 4 systemctl start rpcbind 5 systemctl start nfs 6 systemctl enable rpcbind 7 systemctl enable nfs 8 9 netstat -anpt | grep rpcbind 10 #查看rpcbind端口是否开启,rpcbind默认 使用tcp端口111



1 查看本机发布的NFS共享目录 2 3 exportfs - rv 4 #查看共享 5 6 showmount -e 7 #发布共享

1 常用选项 2 3 all_squash : 所有访问用户都映射为匿名用户或用户组 4 5 async: 将数据先保存在内存缓冲区中,必要时才写入磁盘 6 7 subtree_check (默认) : 若输出目录是一个子目录,则nfs服 务器将检查其父目录的权限 8 9 o_subtree_check: 即使输出目录是一个子目录,则nfs服务器也不检查其父目录的权限,这样可以提高效率 10 11 anonuid=xxx : 指定NFS服务器/etc/ passwd文件中匿名用户的UID 12 13 anongid=xxx : 指定NFS服务器/etc/passwd文件中匿名用户的GID
访问NFS共享资源
1 安装nfs-utils、rpcbind 软件包 2 3 rpm -q rpcbind nfs-utils 4 yum -y install nfs-utils rpcbind 5 systemctl start rpcbind 6 systemctl enable rpcbind 7 8 #查看NES服务器端共享了哪些目录 9 showmount -e 192.168.208.30



1 手动挂载NFS 共享目录 2 3 mkdir /xyc 4 mount 192.168.208.30: /share /xyc5 mount #确认挂载结果,也可以使用df -Th

1 设置自动挂载 2 3 vim /etc/fstab 4 192.168.208.30:/share /xyc nfs defaults,_netdev 0 0 5 6 _netdev:表示挂载设备需要网络

1 强制卸载NFS 2 3 umount -lf /xyc

如果服务器端NFS服务突然间停掉了,而客户端正在挂载使用时,在客户端就会出现执行df-hT命令卡死的现象。这个时候直接使用umount命令是无法直接卸载的,需要加上-lf选项才能卸载。

浙公网安备 33010602011771号