1 定义
NFS 是一种基于TCP/IP 传输的网络文件系统协议。
2 优缺点
优点:
通过使用NFS 协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源。
对于大多数负载均衡群集来说,使用NFS协议来共享数据存储是比较常见的做法,NFS也是NAS存储设备必然支持的一种协议。
缺点:
但是由于NFS没有用户认证机制,而且数据在网络上明文传输,所以安全性很差,一般只能在局域网中使用
3 使用配置
NFS 服务的实现依赖于 RPC (Remote Process Call,远端过程调用)机制,以完成远程到本地的映射过程。
所以需要安装 nfs-utils、rpcbind 软件包来提供 NFS共享服务,前者用于 NFS 共享发布和访问,后者用于 RPC 支持。
下载安装 nfs-utils , rpcbind 软件包
服务: nfs , rpcbind
4 配置文件与配置格式
NFS 的配置文件为/etc/exports
格式为∶
二: NFS 共享存储原理
三:服务端配置 NFS 共享存储服务
1 安装 nfs-utils , rpcbind 软件包
[root@host102 ~]# rpm -q rpcbind nfs-utils rpcbind-0.2.0-42.el7.x86_64 nfs-utils-1.3.0-0.48.el7.x86_64
2 设置共享目录
[root@host102 ~]# mkdir -p /opt/share [root@host102 ~]# chmod 777 /opt/share
3 修改nfs 的配置文件,发布共享目录
[root@host102 ~]# vim /etc/exports /opt/share 192.168.23.0/24(rw,sync,no_root_squash) 192.168.1.0/24(r0)
权限选项 | 说明 |
rw | 允许读写 |
ro | 只读 |
sync | 表示同步写入到内存与硬盘中 |
async | 异步,先将数据写入到内存,再将数据写入到硬盘 |
no_root_squash | 表示当客户机以root 身份访问时赋予本地root 权限(默认) |
root_squash | 表示客户机用root 用户访问该共享目录时,将root用户映射成匿名用户 |
anonuid=xxxx | 指定NFS 服务器/etc/passwd 文件中匿名用户的UID |
anongid=xxxx | 指定NFS 服务器 /etc/passwd 文件中匿名用户的GID |
4 启动NFS 服务
[root@host102 ~]# systemctl start rpcbind [root@host102 ~]# systemctl start nfs [root@host102 ~]# systemctl enable rpcbind nfs Created symlink from /etc/systemd/system/multi-user.target.wants/nfs-server.service to /usr/lib/systemd/system/nfs-server.service.
[root@host102 ~]# netstat -antp | grep ":111" tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1/systemd tcp6 0 0 :::111 :::* LISTEN 1/systemd
5 发布NFS 共享目录
[root@host102 ~]# exportfs -rv
查看
[root@host102 ~]# showmount -e
四:客户端挂载使用NFS
1 客户机安装 nfs-utils , rpcbind 软件包,并启动服务
[root@host13 ~]# rpm -q rpcbind nfs-utils rpcbind-0.2.0-42.el7.x86_64 nfs-utils-1.3.0-0.48.el7.x86_64
启动rpcbind 服务,并设置开机自启
[root@host13 ~]# systemctl start rpcbind [root@host13 ~]# systemctl enable rpcbind
2 手动挂载NFS 共享目录
2.1先使用 showmount 查看 目标服务器共享了哪些目录
[root@host13 ~]# showmount -e 192.168.23.102
2.2挂载
[root@host13 ~]# mkdir /myshare [root@host13 ~]# mount 192.168.23.102:/opt/share /myshare
2.3查看挂载
[root@host13 ~]# df -hT
3 自动挂载
[root@host13 ~]# vim /etc/fstab
[root@host13 ~]# mount -a
4 强制卸载
umount -lf /myshare