143  
   0
如何让CIFS客户端对NFS客户端下写入的文件具有读写权限?
作者:李星伟于 2022年09月13日 发布在分类 / 经验案例 / 经验案例 下,并于 2022年09月19日 编辑
CIFS NFS 访问权限

一、组网图

不涉及

二、问题描述

创建nfs共享目录并挂载至nfs客户端,在nfs目录内写入文件,再将同一共享目录通过cifs共享出去,在cifs客户端上对该目录文件进行读写操作发现文件在cifs客户端只有读权限,无法正常写入

三、过程分析

在linux客户端上创建文件时由于umask控制导致文档对其他用户和组只有读权限,(umask决定在创建目录或者文件时去除哪些权限,umask值默认为022,例如文件创建时默认权限为666,经过umask权限修改之后为644也就是rw_r_r,所以只对其他用户只有r权限)

四、解决方法

方案一:在nfs客户端上使用命令将文件权限改成777 (chmod 777 文件名)(该方法仅限临时使用

方案二:将nfs共享的nfsnobody的GID和UID改为cifs客户端访问用户的GID和UID

nfs客户端使用root用户挂载:

在设置nfs参数时默认将nfs客户端root用户压缩为nfsnobody用户和用户组,在设置nfs高级参数时将下图框中的GID和UID改为cifs客户端访问用户的GID与UID

使用非root用户挂载nfs配置

如果挂载时使用非root用户,则需要在gui上修改将no_all_squash改为all_squash,目的是让所有用户都映射为nfsnobody


方案三: NAS master 节点修改 smb 共享参数,增加 admin users 条目,并 systemctl restart smb 重启 smb ,使得访问 CIFS 共享的用户权限提升为管理者权限。
1、打开/etc/samb/smb.conf文件,找到需要增加权限的cifs共享,在其中添加一行 admin users = 用户名


2、重启smb服务 systemctl restart smb

五、风险提示

1、如有条件,建议优先使用方案二。如局点需要采用其他方案,请提前知会到研发

2、对同一目录开启cifs和nfs共享可能带来风险,避免在同一时刻在不同共享上对文件进行操作,请提前知会客户

六、关键字

CIFS,NFS,访问权限


 知识评论当前评论数0

 推荐知识


 访问权限

创建人 李星伟
工作小组 宏杉成员
文档编辑权限 创建者私有
文档阅读权限 来自分类
分类阅读权限 所有人
分类编辑权限 技术服务部  : 机构     渠道合作伙伴  : 机构     系统管理员 : 人员     
分类审核权限 审核小组  : 岗位    
分类预览权限 审核小组 : 岗位    
分类下载权限 技术服务部  : 机构    
 历史版本

修改日期 修改人 备注
2022-09-19 15:42:42[当前版本] 李星伟 描述错误
2022-09-13 16:06:26 李星伟 CREAT

 附件

附件类型

JPGJPG

 目录
    宏杉案例知识库-V4.0.1