NFS

nfs介绍:

网络文件系统,英文Network File System
samba实现的是windows和windows,windows和linux,linux和linux之间的共享。
nfs实现的是linux和linux,linux和unix,unix和unix之间的共享。

nfs基本信息

服务端软件:nfs-utils.x86.64 (rhel8系统默认已经安装)
服务脚本:nfs-server
共享配置文件:/etc/exports

nfs的启用

nfs基本工作原理

远程客户主机发送放松nfs资源请求-------->服务端主机rpc-bind分配端口---------->mount检测nfs是否有共享内容----------->nfs 检测客户主机是否满足访问条件---------->满足条件同意访问/etc/exports里的共享目录

所以要使用到的服务有 :mounted rpc-bind

systemctl start nfs-server 开启nfs服务
firewall-cmd --permanent --add-service=rpc-bind  将rpc-bind服务添加进火墙策略
firewall-cmd --permanent --add-service=nfs   将nfs服务添加进火墙策略
firewall-cmd --permanent --add-service=mountd  将mounted服务添加进火墙策略 
firewall-cmd --reload  重新加载火墙策略

测试:
服务端主机ip:192.168.0.120
在服务端创建分享目录:

mkdir /nfsshare

编辑nfs共享配置文件:

vim /etc/exports

在这里插入图片描述
编辑完成后,保存退出。
使用exportsfs -rv 使更改生效。

在客户端使用命令:showmount -e nfs主机ip 查看分享:

 shoumount -e 192.168.0.120

在这里插入图片描述
成功查看nfs主机的分享。

nfs配置

配置文件:/etc/exports
此文件更改后使用exportfs -rv生效
书写方式:
共享目录 共享给谁(参数)

===============================================

首先,我们在服务器主机给共享的目录满权限:
在这里插入图片描述
当前共享目录的共享参数为ro(只读)
在这里插入图片描述

在客户主机对共享目录进行挂载:

mount 192.168.0.120:/nfsshare /mnt/

在这里插入图片描述
挂载成功!
在共享文件内尝试建立新文件:
在这里插入图片描述
可以看到,新建文件失败,因为服务器共享配置文件/etc/exports里参数为只读。并不会因为共享目录本身的满权限而客户主机可写。

在服务端器共享配置文件/etc/exports里修改参数为读写:
在这里插入图片描述
编辑完成后,保存退出。使用exportfs -rv使更改生效。
返回客户主机,再次新建文件test:
在这里插入图片描述
新建成功!

nfs常用配置参数

可以使用man 5 exports 查看nfs共享参数:

参数作用
anonuid=1000,anongid=1000指定用户身份
sync更改生成后同步数据到服务器
async时时同步数据到服务器
rw读写
ro只读
no_root_squashroot用户挂载不转换身份

指定用户身份 :
在服务端的动向目录可以看到,远程客户主机新建的文件使以用nobody的用户身份进行操作的:
在这里插入图片描述
现在,服务端主机有一个用户xng:
在这里插入图片描述
指定客户端使用xng用户身份进行操作:
在这里插入图片描述
编辑完成后,保存退出。使用exportfs -rv使更改生效。
在客户端在共享目录新建文件xngfile:
在这里插入图片描述
新建成功后,回到服务端查看:
在这里插入图片描述
可以看到,此时远程客户主机新建的文件是以xng用户身份建立。

root用户挂载不转换身份:
上边的实验我们知道,在没有指定用户的情况下,新建的文件都是以nobody的身份去新建,也就是说,客户主机所有用户在共享目录的的操作都是转换为nobody的身份进行。默认为no_all_squash。
可以在服务端位置文件/etc/exports添加参数no_root_squash,意为当超级用户挂载时,不去转换用户身份,还是以超级用户身份。
在这里插入图片描述
编辑完成后,保存退出。使用exportfs -rv使更改生效。
返回客户端,在共享目录新建文件test1:
在这里插入图片描述
回到服务端进行查看:
在这里插入图片描述
可以看到新建的test1文件的所有者和所有组为root,设定成功。

nfs+autofs

详细方法参照我的博客autofs章节

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值