一、系统环境
二、服务安装与配置
2.1、服务安装
yum install -y nfs-utils rpcbind
2.2、配置共享参数
编辑文件
vim /etc/exports
然后根据下面的语法进行编辑
Export list for ${Server_IP}:
${dir} ${subnet}(rw)
- 假设我要共享/nfs/目录
- 我的服务器IP是192.168.0.111
- 我希望/nfs目录任何人都可以读写
那么我的参数就是
Export list for 192.168.0.111:
/nfs 192.168.0.0/24(rw)
- rw #就是赋予读写的权限
- ro #赋予只读的权限(可把rw改成ro)
2.3、重启服务
配置完参数之后需要重启服务使其生效
systemctl restart rpcbind nfs-server
如果防火墙打开的话需要对其进行放行或者直接关闭防火墙服务
2.3.1、放行服务(二选一)
firewall-cmd --permanent --add-service=nfs
firewall-cmd --reload
2.3.2、关闭防火墙(二选一)
systemctl stop firewalld&&systemctl disable firewalld
2.4、配置共享路径权限
如果需要配置读写权限,那么就需要对共享文件夹进行权限更改
chmod -R 777 /nfs/
777的意思就是所有用户都可以读写,但是实际上能不能读写还需要看共享服务是否允许,也就是说,首先系统必须给所有权限,然后服务才能给相关权限,但是服务可以不给全部权限
三、访问
3.1、打开NFS服务
首先进入控制面板的程序,选择打开或关闭windows功能
控制面板\程序
然后勾选这两个功能
最后确定即可
3.2、访问验证及读写
首先在Linux 上可以看到,此时的共享目录有两个文件
然后在windows输入NFS地址访问
\\192.168.0.111\nfs
按微标键+R调出运行窗口,按照下面的语法输入,然后运行
\\${Server_IP}\${dir}
3.2.1、访问服务器
\\192.168.0.111\nfs
然后就可以看到共享的文件了
3.2.2、删除文件
删除成功
3.3、访问验证及只读
如果不希望别人乱删文件,那么可以配置共享权限为ro
当把rw改成ro的时候,就只能读取,无法修改删除了
通过这个服务,可以简单的配置文件共享。
四、更多扩展
如果需要共享多个目录,那么只需要在配置文件依次添加路径及权限即可
4.1、权限选项
参数 | 作用 |
ro | 只读 |
rw | 可读写 |
root_squash | 当NFS客户端以root管理员访问时,映射为NFS服务器的匿名用户 |
no_root_squash | 当NFS客户端以root管理员访问时,映射为NFS服务器的root管理员 |
all_squash | 无论NFS客户端使用什么账户访问,均映射为NFS服务器的匿名用户 |
sync | 同时将数据写入到内存与硬盘中,保证不丢失数据 |
async | 优先将数据保存到内存,然后再写入硬盘;这样效率更高,但可能会丢失数据 |
4.2、主机访问控制
在共享配置参数中
Export list for 192.168.0.111:
/nfs 192.168.0.0/24(rw)
第一个IP地址(192.168.0.111)指的是共享服务器的IP地址
第二个IP地址(专业点说是子网)【192.168.0.0/24】指的是可访问的主机范围,如果需要全部主机可访问,只需要把这个子网后改成【0.0.0.0】即可,子网与权限之前没有空格"24(rw)"