Ubuntu 22.04 文件夹共享给Windows域用户权限问题求助
Ubuntu 22.04 文件夹共享给Windows域用户权限问题求助
我来帮你捋捋这个共享权限的问题,你遇到的「无权限访问」大概率是几个关键配置没跟上,咱们一步步解决:
1. 先修正Workgroup配置(重中之重)
因为你的环境是Windows域局域网,而当前smb.conf里的workgroup = WORKGROUP是默认的工作组名称,和你的域环境不匹配,必须改成你Windows域的NetBIOS名称(一般是域域名的大写前缀,比如你的域是corp.com,NetBIOS名就是CORP)。
2. 调整Samba共享段的配置
你当前的[media]段配置有几个需要优化的地方,建议修改成这样:
[media] path = /home/xoleg/media browsable = yes writable = yes read only = no guest ok = no # 关掉匿名guest访问,因为要给域用户授权 valid users = @DOMAIN\\Domain Users # 替换成你域里的用户组,比如@CORP\\Domain Users force user = xoleg # 换成你Ubuntu本地拥有该文件夹权限的用户(比如你的xoleg账号) inherit permissions = yes # 让共享权限继承文件夹的系统权限
注:
force user的作用是把所有访问该共享的用户都映射成xoleg,这样能避免域用户和Ubuntu本地权限不匹配的问题;如果需要不同域用户有不同权限,可以去掉这个选项,确保域用户在Ubuntu上有对应的权限映射。
3. 配置Samba的域安全模式
因为是Windows域环境,需要把Samba的安全模式改成域认证模式,在smb.conf的全局配置段加上:
security = ADS realm = YOUR-DOMAIN.COM # 替换成你的完整域域名,比如corp.com
4. 把Ubuntu加入Windows域(如果还没做)
这一步是关键!如果Ubuntu没加入域,域用户根本无法被系统识别,操作步骤如下:
- 安装必要工具:
sudo apt install realmd sssd sssd-tools libnss-sss libpam-sss adcli samba-common-bin oddjob oddjob-mkhomedir packagekit - 发现你的域:
sudo realm discover your-domain.com - 用域管理员账号加入域:
执行后输入域管理员密码即可完成加入。sudo realm join your-domain.com -U 'domain-admin-username'
5. 修正文件夹的系统权限
确保/home/xoleg/media文件夹的权限允许域用户访问:
sudo chmod -R 775 /home/xoleg/media sudo chown -R xoleg:DOMAIN\\Domain\ Users /home/xoleg/media
这里的
DOMAIN\\Domain\ Users要替换成你域用户组在Ubuntu上的名称,注意空格要转义。
6. 重启服务生效
修改完配置后,重启Samba和相关服务:
sudo systemctl restart smbd nmbd sssd
做完这些步骤后,你再在Windows上用域用户账号访问\\myubuntu\media,应该就能正常打开并读写了。
备注:内容来源于stack exchange,提问作者ZedZip
相关产品推荐
相关产品推荐

