【Linux基础服务教程】NFS网络文件共享
一、关于NFS
- NFS 网络文件系统
- Network File System
- NFS提供数据存储能力,同时借助RPC机制实现数据共享传输
- 作用
- 中小型业务的共享存储
- 适用于Linux系统间
- 端口号:
2049
1.软件包和配置文件
- 软件
- nfs-utils, rpcbind
- 配置文件
- /etc/exports
2.配置文件格式
目录名称 客户端地址(权限,权限) 客户端地址(权限,权限)
客户端地址
- 单个地址 192.168.1.1
- 网段 192.168.1.0/24
- 所有 *
- 主机名 node01.linux.com
常用权限
- ro 只读
- rw 读写
- sync 同步
- 数据安全性高
- async 异步
- 数据处理速度快
- no_root_squash 保留root用户权限
二、配置只读共享
1.关闭防火墙和SElinux
步骤省略
2.创建测试文件
[root@nfsserver ~]# mkdir /webdata
[root@nfsserver ~]# touch /webdata/{1..10}.html
3.安装软件包
[root@nfsserver ~]# yum install nfs-utils rpcbind
4.修改配置文件
[root@nfsserver ~]# vim /etc/exports
/webdata 192.168.140.11(ro) 192.168.140.12(ro) #目标机的IP和只读权限,可以直接填写网段
5.启动NFS服务
[root@nfsserver ~]# systemctl start nfs-server
[root@nfsserver ~]# systemctl enable nfs-server
6.查看共享目录
[root@nfsserver ~]# showmount -e localhost
Export list for localhost:
/webdata 192.168.140.12,192.168.140.11
三、客户端连接NFS服务器
自行准备第二台虚拟机
1.安装NFS服务
[root@localhost ~]# yum install nfs-utils
2.挂载NFS服务器
[root@localhost ~]# vim /etc/fstab
192.168.140.10:/webdata /web nfs defaults 0 0
[root@localhost ~]# mount -a
[root@localhost ~]# df -hT | grep "web"
192.168.140.10:/webdata nfs4 18G 1.3G 17G 7% /web
四、配置读写共享
回到NFS服务器
1.创建测试文件
[root@nfsserver ~]# mkdir /dbdata
[root@nfsserver ~]# touch /dbdata/{1..10}.sql
2.修改配置文件
[root@nfsserver ~]# cat /etc/exports
/dbdata 192.168.140.11(rw,async,no_root_squash) 192.168.140.12(rw,async,no_root_squash)
- rw 读写权限
- async 同步
- no_root_squash 保留root用户权限 #默认属主和属组是nfsnobody
3.添加权限(重要)
[root@nfsserver ~]# chmod o+w /dbdata/ #其他用户添加w权限
4.重读配置文件
[root@nfsserver ~]# exportfs -rav
exporting 192.168.140.11:/dbdata
exporting 192.168.140.12:/dbdata
exporting 192.168.140.11:/webdata
exporting 192.168.140.12:/webdata
5.客户端挂载
[root@localhost ~]# vim /etc/fstab
192.168.140.10:/dbdata /db nfs defaults 0 0
[root@localhost ~]# mount -a
[root@localhost ~]# df -hT | grep "db"
192.168.140.10:/dbdata nfs4 18G 1.3G 17G 7% /db