samba 共享目录write permission deny问题修复 可读取内容但不可修改 删除 新增文件

关于 update/delete/write permission deny问题修复

0.首先在服务器端执行testparm -s ,测试 Samba 配置并显示结果。需确保服务器端参数 read only = No ,共享目录有写入权限

一、若配置了允许匿名访问,使用匿名访问来操作smb需要做如下处理(匿名访问会将无效用户映射成nobody用户操作):

1.mount 挂载时设置文件和文件夹权限为777:mount -t cifs //10.1.1.115/shared /samba-data/data/ -o rw,dir_mode=0777,file_mode=0777,username="ecmaster"

或者设置所属用户和所属组为nobody和nogroup:mount -o rw,uid=65534,gid=65534,username="ecmaster" (id nobody 命令可查看用户和用户组的id)

2.上面只是设置了客户端的文件权限,服务器端暴露的共享目录也需修改文件权限为777: chmod -R 777 /目录

或者设置所属用户和所属组为nobody和nogroup: chown -R nobody:nogroup /目录

3.同时还要修改服务器端参数确保新建的文件权限也为777:

force create mode = 0777

force directory mode =0777

或者确保新创建文件的用户和用户组为nobody和nogroup:

force user = nobody

force group = nogroup

二、关闭匿名访问(guest ok = No),看共享的文件所属用户是哪个就用哪个用户登陆,我这边是root

1.给samba增加root用户密码(samba密码默认是与linux分开的,不配置mount时会permission deny): smbpasswd -a root

2.然后以root用户进行挂载即可:mount -t cifs //10.1.1.115/shared /samba-data/data/ -o rw,username="root"

可自行调整参数,然后重新挂载测试

umount -lf /samba-data/data # 制取消挂载 不受device is busy影响

相关推荐
勇哥的编程江湖20 分钟前
starrocks官网docker部署mysql无法连接
运维·docker·容器
EulerBlind1 小时前
【运维】SGLang 安装指南
运维·人工智能·语言模型
van叶~2 小时前
Linux网络-------1.socket编程基础---(TCP-socket)
linux·网络·tcp/ip
风吹落叶花飘荡2 小时前
Ubuntu系统 系统盘和数据盘扩容具体操作
linux·运维·ubuntu
誰能久伴不乏2 小时前
Linux如何执行系统调用及高效执行系统调用:深入浅出的解析
java·服务器·前端
zoulingzhi_yjs2 小时前
haproxy配置详解
linux·云原生
bingbingyihao2 小时前
Node.js 模拟 Linux 环境
linux·node.js
大神的风范2 小时前
从0开始学linux韦东山教程Linux驱动入门实验班(5)
linux
Z7676_3 小时前
OSPF开放式最短路径优先
运维·网络
RPA+AI十二工作室3 小时前
影刀RPA_抖音评价获取_源码解读
运维·机器人·自动化·源码·rpa·影刀