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影响

相关推荐
傻傻虎虎33 分钟前
【Docker】常用帮忙、镜像、容器、其他命令合集(2)
运维·docker·容器
ZERO_pan2 小时前
服务器装机遇到的问题
运维·服务器
逆小舟2 小时前
【Linux】人事档案——用户及组管理
linux·c++
青草地溪水旁2 小时前
pthread_mutex_lock函数深度解析
linux·多线程·pthread
l1t2 小时前
利用DeepSeek实现服务器客户端模式的DuckDB原型
服务器·c语言·数据库·人工智能·postgresql·协议·duckdb
杀气丶2 小时前
Linux下运行芙蕾雅天堂2【俄文简译L2FATER】
运维·服务器·天堂2·l2fater·l2fater.cn
喵手2 小时前
玩转Java网络编程:基于Socket的服务器和客户端开发!
java·服务器·网络
太空的旅行者3 小时前
告别双系统——WSL2+UBUNTU在WIN上畅游LINUX
linux·运维·ubuntu
九章云极AladdinEdu4 小时前
超参数自动化调优指南:Optuna vs. Ray Tune 对比评测
运维·人工智能·深度学习·ai·自动化·gpu算力
人工智能训练师5 小时前
Ubuntu22.04如何安装新版本的Node.js和npm
linux·运维·前端·人工智能·ubuntu·npm·node.js