参考:

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. Java中创建对象的5种方式总结

    引言 作为Java开发人员,我们每天都会代码中创建对象,但我们通常使用依赖管理系统,比如Spring框架,然后,这里有很多种创建对象的方式,本文就对Java创建对象的几种方式进行总结 五种创建方式 创 ...

  2. linux查看redis安装路径

    ## linux查看redis安装路径 redis-cli -h 127.0.0.1 -p 6379redis-cli monitor > redis2.log /usr/local/redis ...

  3. idea编译报错 静态Map初始化报错java.lang.ExceptionInInitializerError

    idea编译报错 静态Map初始化报错java.lang.ExceptionInInitializerError package cc.mrbird.utils; import java.util.H ...

  4. Vulnhub Mercy Walkthrough

    Recon 首先进行二层扫描. ┌──(kali㉿kali)-[~] └─$ sudo netdiscover -r 192.168.80.0/24 Currently scanning: Finis ...

  5. FFmpeg GL-transition转场的简单使用体验

    写在前面 最近在处理视频,遇到两个视频之间的转场用原生的 xfade写起来很痛苦,实现成本高,难度大:我这里主要用的FFmpeg,就想找一个插件专门干转场这个事:搜索了一翻后找到 GL-transit ...

  6. Android 各层架构

    Android应用框架层和硬件抽象层以及底层之间的关系 1. JNI技术: (1).JNI技术简单的说就是在本地Java语言声明本地方法和加载动态链接库(.so文件) (2).动态链接库(.so文件) ...

  7. P8571 题解

    既然字符串的总长一定,不妨对于每个询问中的 \(s_k\) 的长度根号分治,假定分治阈值为 \(B\).下面令 \(L\) 为所有串长度总和. 对于长度大于 \(B\) 的字符串,这样的不同字符串至多 ...

  8. Konva 内容重叠无法触发点击事件的解决方法

    写在前面: 环境:Vue3 + Konva + vite 在绘制界面时踩坑,主要是关于 listening 属性的使用 在绘制界面时,不免出现有内容重叠的情况,这会影响事件的触发 使用设置listen ...

  9. LabVIEW的自定义按钮

    下载几张图片: 比较好的 网站1:https://www.iconfont.cn/ 网站2:https://yesicon.app/ 选用windows风格按钮控件进行自定义, 自定义的图片分别放入这 ...

  10. 基于Docker安装项目管理工具禅道

    禅道是通用的项目管理软件 完整支持敏捷项目模型.瀑布项目模型.看板模型 内置项目集.产品.项目和执行四个管理框架 支持CMMI标准的落地实施 下载镜像 docker pull easysoft/zen ...