拓扑园

  • O&M
    • Universal部署
    • PHP+VUE+Laravel相关
  • Oracle性能优化
  • Oracle项目案例
    • Oracle近期项目案例(目录)
    • Oracle实战问题解析(目录)
    • Oracle数据库名变更流程(2种方式)
    • Oracle数据库目录更换流程(使用Oracle的clone工具)
    • Oracle数据库迁移方案(目录)
    • 标准化文档系列
  • Oracle基础知识
    • LLL的Oracle培训(分类)
    • LLL的docker培训(分类)
    • 标准化文档系列--(分类)
    • Oracle核心经典分析(分类)
    • 图灵小队----(分类并包含以下文章)
    • --MySQL8.0/Oracle/Memcached/Redis等安装配置于RHEL/OL6/7/8.X系列-运行环境最优配置
    • --PG安装配置于RHEL/9X系列-运行环境最优配置
    • --自动维护任务详解-开启、关闭信息统计收集(统计信息)
    • --图灵小队—Oracle/PostgreSQL下创建一个用户测试表(自行定义数据行)
    • --图灵小队-Oracle存储过程导出表的明细_UTL_FILE(文章)
    • --图灵小队-Oracle数据库删除/卸载操作指南(文章)
    • --图灵小队-Oracle常用性能查询SQL语句(文章)
    • --图灵小队-Oracle数据库上线前检查(文章)
    • --图灵小队-Oracle常用SQL语句(文章)
    • --图灵小队—Linux/Oracle脚本/MySQL合集(持续更新)
    • --图灵小队-Oracle技巧记录(文章)
    • ADG
    • RAC
    • ASM
    • OGG
    • RMAN
    • EXPDP/IMPDP
    • 工厂数据导入导出系列
  • MySQL
    • MySQL数据库规范
    • MySQL项目案例
    • MySQL安装配置
    • MYSQL集群项目
    • MySQL常见处理
    • MySQL-Sysbench专题
    • MySQL-Percona Toolkit专题
  • Linux
    • Shell编程
    • kubernetes
    • docker
    • Linux
    • PHP
    • Nginx
    • haproxy
    • mail
    • 网站
    • 域名
    • 网址收藏
  • 数据中心
    • 新框架系统集合
    • 工作文档
    • EBS数据文件扩容
    • VMware虚拟化
    • EBS系列
    • 大数据
    • SVN
    • zabbix
    • SAP
    • 备份相关
    • FC交换机
    • SVN
  • K-Studing
    • D8-Python学习
    • Oracle/MySQl等面试题
    • LG-MySQL
    • LG-Docker/K8S
    • LG-PostgreSQL
    • LG-ORACLE_BBED
    • LG-ORACLE
    • LG-Elasticsearch(ES)+ELK
    • Oracle-19C-OCP
    • WERN_ORACLE培训
    • redis数据库
    • Nginx培训学习系列
  • 其他
    • 外研英语4年级下册-听力
    • 影视系列
    • 如何使用iTunes软件通过抓包下载旧版本的ios的app
天高任鸟飞
Oracle/MySQL数据库恢复/数据迁移/生产规范报告技术交流:TEL:18562510581(微信同号);加微信入群
  1. 首页
  2. Linux
  3. 正文

mount 挂载远程目录(使用nfs服务),普通用户之间

2021年4月16日 6874点热度 0人点赞 0条评论

目录

  • 一、安装
  • 二、配置端口(防火墙关闭就不用了)
    • 三、NFS权限说明
    • 1、普通用户
    • 2、root用户
    • 3、选项说明
  • 三、配置案例(普通用户、gid和uid,两边皆不一致)
  • 四、配置案例(普通用户,gid一致,文件有664权限)
    • 1、服务端配置:
    • 2、客户端配置:
  • 五、配置案例(普通用户,uid一致或uid,gid都一致,文件即可读取)

一、安装

nfs客户端和服务端都安装nfs-utils包,同时自动安装rpcbind。安装后会创建nfsnobody用户和组,uid和gid都是65534。

# yum -y install nfs-utils

二、配置端口(防火墙关闭就不用了)

nfs除了主程序端口2049和rpcbind的端口111是固定以外,还会使用一些随机端口,以下配置将定义这些端口,以便配置防火墙

# vim /etc/sysconfig/nfs
#追加端口配置
MOUNTD_PORT=4001  
STATD_PORT=4002
LOCKD_TCPPORT=4003
LOCKD_UDPPORT=4003
RQUOTAD_PORT=4004

三、NFS权限说明

1、普通用户

当设置all_squash时:访客时一律被映射为匿名用户(nfsnobody)【此时可以配置anonuid的值,让某些IP的用户完全访问】

当设置no_all_squash时:访客被映射为服务器上相同uid的用户,因此在客户端应建立与服务端uid一致的用户(或者是gid用户,文件有664权限也可以),否则也映射为nfsnobody。root除外,因为root_suqash为默认选项,除非指定了no_root_squash

2、root用户

当设置root_squash时:访客以root用户访问NFS服务端时,被映射为nfsnobody用户。

当设置no_root_squash时:访客以root用户访问NFS服务端时,被映射为root用户。以其他用户访问时同样映射为对应uid的用户,因为no_all_squash是默认选项

3、选项说明

ro:共享目录只读
rw:共享目录可读可写
all_squash:所有访问用户都映射为匿名用户或用户组
no_all_squash(默认):访问用户先与本机用户匹配,匹配失败后再映射为匿名用户或用户组
root_squash(默认):将来访的root用户映射为匿名用户或用户组
no_root_squash:来访的root用户保持root帐号权限
anonuid=<UID>:指定匿名访问用户的本地用户UID,默认为nfsnobody(65534)
anongid=<GID>:指定匿名访问用户的本地用户组GID,默认为nfsnobody(65534)
secure(默认):限制客户端只能从小于1024的tcp/ip端口连接服务器
insecure:允许客户端从大于1024的tcp/ip端口连接服务器
sync:将数据同步写入内存缓冲区与磁盘中,效率低,但可以保证数据的一致性
async:将数据先保存在内存缓冲区中,必要时才写入磁盘
wdelay(默认):检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可以提高效率
no_wdelay:若有写操作则立即执行,应与sync配合使用
subtree_check(默认) :若输出目录是一个子目录,则nfs服务器将检查其父目录的权限
no_subtree_check :即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率

三、配置案例(普通用户、gid和uid,两边皆不一致)

最关键配置:利用all_squash和anonuid,将匿名访问过来的用户都设置为本地用户UID,即当前目录拥有着的uid即可。

1、配置/etc/exports

允许172.18.5.149访问,且模式是rw,all_squash。

[root@yczbora ~]# vi /etc/exports
/test1 172.18.5.149(rw,async,all_squash,anonuid=51001)

四、配置案例(普通用户,gid一致,文件有664权限)

1、服务端配置:

(1)服务端创建用户和组都为test1,并创建目录/test1,权限为664(组成员也可rw)

[root@yczbora ~]# id test1
uid=51001(test1) gid=50001(test1) groups=50001(test1)

[root@yczbora ~]# ll /|grep test1
drwxr-xr-x.   2 test1  test1      19 Apr 16 21:59 test1

(2)配置/etc/exports

允许172.18.5.149访问,且模式是rw,no_all_squash

[root@yczbora ~]# vi /etc/exports
/test1 172.18.5.149(rw,async,no_all_squash)
(3)查看nfs版本及是否参数可用

exportfs -r
exportfs -v

2、客户端配置:

(1)服务端创建用户和组都为test2,并创建目录/test2

[root@localhost /]# id test2
uid=41001(test2) gid=40001(test2) groups=40001(test2),50001(test111)

其中最重要的是test2的从组为test111的id是50001,和test1的组一致,这样才能确保,test2用户可以直接访问test1用户的/test1目录的内容(前提是/test1和其内部文件都有664权限,第二个6是组权限,rw即可)。

(2)挂载:

[root@localhost /]# mount 172.18.5.143:/test1 /test2

五、配置案例(普通用户,uid一致或uid,gid都一致,文件即可读取)

[root@yczbora ~]# vi /etc/exports
/test1 172.18.5.149(rw,async,no_all_squash)

这种情况,只要是test1和test2的uid一致了,就实现了test2对/test1下所有的文件的读写。

 

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: 暂无
最后更新:2021年4月17日

admin

这个人很懒,什么都没留下

打赏 点赞
< 上一篇
下一篇 >

文章评论

您需要 登录 之后才可以评论

COPYRIGHT © 2022 拓扑园. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

鲁ICP备2021020523号

鲁ICP备2021020523号