参考:

https://www.cnblogs.com/devilmaycry812839668/p/15127755.html

由上面的参考资料我们可以知道在nfs服务端进行配置时对于客户端的权限设定主要有以下字段:

no_root_squash

root_squash

all_squash

anonuid

anongid

其中,no_root_squash,root_squash表示的意思正好相反,如果我们在服务端 /etc/exports中同时设置,如:

/data         192.168.11.66(rw,sync,fsid=0,crossmnt,no_subtree_check,root_squash,no_root_squash)

那么实际上还是将权限设置为no_root_squash,也就是说客户端如果使用root账户对挂载的文件系统进行操作时文件系统记录的账户权限为root。

同时,很神奇的事情是如果我们将root_squash和no_root_squash调换位置,即:

/data          192.168.11.66(rw,sync,fsid=0,crossmnt,no_subtree_check,no_root_squash,root_squash)

那么实际上还是将权限设置为root_squash,也就是说客户端如果使用root账户对挂载的文件系统进行操作时文件系统记录的账户权限为nobody。

其实,将root_squash,no_root_squash混写在一起是没有太多意义的。

root_squash  :  只将客户端的root用户的操作记录为nobody用户的操作,客户端其他用户的操作均直接按照其真正的uid和gid进行。比如:客户端电脑上的uid=1004用户对客户端挂载的nfs进行操作,其权限就如何服务端上uid=1004的账户进行操作一样。换句话说就是只将客户端root用户映射为nobody,而客户端的其他用户uid则不进行映射。

而no_root_squash  :  除了客户端root用户操作挂载的nfs时映射为服务端的root用户其他和root_squash一致,都是不对其他客户端uid进行映射操作,客户端上uid为多少的用户操作后在服务端上显示的权限也是该uid。

前面我们知道root_squash,no_root_squash 只能决定是否将客户端root用户映射为服务端的nobody,而客户端的其他uid均不做映射,而all_squash则决定是否将所有客户端的用户都映射为nobody。

那么no_root_squash 和  all_suqash 在一起是否能将客户端上的root在操作挂载的nfs时squash为nobody用户呢,如下配置:

/data         192.168.11.66(rw,sync,fsid=0,crossmnt,no_subtree_check,no_root_squash,all_squash)

发现,最终效果为  all_squash,

那么替换下位置呢,如下:

/data         192.168.11.66(rw,sync,fsid=0,crossmnt,no_subtree_check,all_squash,no_root_squash)

发现,最终效果依旧为  all_squash。

因此我们知道了以下需要的配置:

把root映射为nobody,其他用户不影响依旧使用相同uid权限,使用:root_squash配置。

把root映射为root,其他用户不影响依旧使用相同uid权限,使用:no_root_squash配置。

如果出现了all_squash 后则不管是什么uid全部映射为nobody。

此时即使出现root_squash和no_root_squash都不影响。因此root_suash和no_root_squash,all_squash共同出现意义不大。

那么默认的suqash 都是把客户端的用户映射为nobody:nogroup,那么我们可以不可以知道把客户端的账户映射为服务端的指定用户和组呢???那就需要使用anonuid 和anongid,如下:

/data         192.168.11.66(rw,sync,fsid=0,crossmnt,no_subtree_check,all_squash,anonuid=1014,anongid=1004)

其意思就是把客户端的所有账户全部映射为服务器端的uid=1014,gid=1004。其实anonuid和anongid本身意义不大,因为默认的映射为nobody:nogroup就已经基本够用了。

网络文件系统nfs服务端配置客户端权限时的demo例子的更多相关文章

  1. Centos 7网络文件系统nfs服务的安装与配置

    实验环境>>>>>>>>> nfs服务端:(nfs-server)192.168.100.2 nfs客户端:(nfs-client)192.168 ...

  2. Linux下网络文件系统NFS服务搭建易错点总结

    一.环境准备: 1 [root@czh ~]# cat /etc/redhat-release 2 CentOS release 6.7 (Final) 3 [root@czh ~]# uname - ...

  3. window nfs 服务端配置安装

    windows7下面安装nfs客户端命令(首先开启windows客户端mount挂载命令): 打开或关闭windows功能>nfs服务(勾选上)重启   windows nfs共享有两种方式分别 ...

  4. Windows10配置NFS服务端和客户端

    环境:Windows10企业版x64 安装服务端 安装hane win nfs server,版本1169(官方最新版1223经试验不成功). 设置如下: 以管理员身份重启服务(注:软件界面上&quo ...

  5. java网络编程-单线程服务端与客户端通信

    该服务器一次只能处理一个客户端请求;p/** * 利用Socket进行简单服务端与客户端连接 * 这是服务端 */public class EchoServer { private ServerSoc ...

  6. NFS服务端与客户端配置

    #首先确认系统中是否安装了对于的软件 rpm -qa|grep -i nfs #在有网络的情况下使用YUM安装NFS.rpcbind软件包 yum install lrzsz nmap tree do ...

  7. 网络文件系统NFS

    NFS介绍 什么是NFS? NFS是Network File System的缩写,即网络文件系统.它的主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录.NFS客户端(一般为应用 ...

  8. NFS相关、NFS服务端安装配置、exportfs命令、nfs客户端的问题

    1.NFS (network file system,基于RPC协议) 2.NFS服务端安装配置安装服务端:yum install nfs-utils rpcbind -y安装客户端:yum inst ...

  9. Linux centosVMware NFS介绍、NFS服务端安装配置、NFS配置选项

    一.NFS介绍 NFS是Network File System的缩写 NFS最早由Sun公司开发,分2,3,4三个版本,2和3由Sun起草开发,4.0开始Netapp公司参与并主导开发,最新为4.1版 ...

  10. NFS介绍 NFS服务端安装配置 NFS配置选项

    NFS 介绍 • NFS是Network File System的缩写 • NFS最早由Sun公司开发,分2,,4三个版本,2和3由Sun起草开发,.0开始Netapp公司参与并主导开发,最新为4.1 ...

随机推荐

  1. disabled 和 readonly 都是 HTML 表单元素的属性,它们有一些相同点和不同点。

    disabled 和 readonly 都是 HTML 表单元素的属性,它们有一些相同点和不同点. 相同点: disabled 和 readonly 属性都可以用于表单中的输入框.文本域等元素,用于控 ...

  2. 一种复习flex布局的方法

    方法论 flex布局有多个属性,时常会忘记.我们复习的话,单纯看一些博客文章,不能直观的理解,也比较枯燥. 因此如果有一种用写代码闯关的方式来复习(学习)flex布局,那也许会更有意思. FLEXBO ...

  3. C#开发的NoteNet桌面小贴士 - 开源研究系列文章 - 个人小作品

    十多年前编写过这个NoteNet小应用,不过当时用的是文本的保存方式,而且功能上也相对较多.这次重新编写这个小应用,用上新的技术和功能.现在先把源码发布出来,在另个系列的博文中( C#基于.net f ...

  4. git 删除远程分支文件

    问题:多人协作开发同一分支的时候,有人误上传了一个不需要的文件,想删除远端仓库的该文件. 本地已经将此文件删除,推送至仓库时,仓库并未删除.此时拉取仓库更新本地时也不会将此文件拉取下来. 解决方案: ...

  5. 三种方法教你下载 Windows 10 和 Windows 11 原生镜像

    原文地址:https://itxiaozhang.com/three-methods-to-download-windows-10-and-windows-11-iso/ 本文配合视频食用效果最佳,视 ...

  6. Linux 增加 swap 分区

    检查当前swap分区 [root@localhost ~]# free -g total used free shared buffers cached Mem: 15 0 14 0 0 0 -/+ ...

  7. 基于Python和TensorFlow实现BERT模型应用

    本文分享自华为云社区<使用Python实现深度学习模型:BERT模型教程>,作者: Echo_Wish. BERT(Bidirectional Encoder Representation ...

  8. 攻防世界——Misc新手练习区解题总结<4>(11、12题)

    第十一题ext3: 方法一:挂载 需要工具:kali虚拟机 下载附件后得到一个linux的系统光盘,我们用kali挂载一下 mount 123 /mnt//123为要挂载的文件名 寻找flag.txt ...

  9. 【资料分享】RK3568核心板规格书(4x ARM Cortex-A55(64bit),主频1.8GHz)

    1 核心板简介 创龙科技SOM-TL3568是一款基于瑞芯微RK3568J/RK3568B2处理器设计的四核ARM Cortex-A55全国产工业核心板,每核主频高达1.8GHz/2.0GHz.核心板 ...

  10. 【Playwright+Python】系列教程(四)Pytest 插件在Playwright中的使用

    一.命令行使用详解 使用Pytest插件在Playwright 中来编写端到端的测试. 1.命令行执行测试 pytest --browser webkit --headed 2.使用 pytest.i ...