一、问题描述
前一阶段我把公司的samba服务器加入到域环境,但由于兼容性的问题导致相关设置无法生成(主要是权限方面),所以又将samba退出域环境。但随之而来的就是所有的文件夹权限全部出问题,本来没有权限的用户可以随意访问之前禁止其访问的文件夹。但也不是全部的都不生效,有部分文件夹权限是正确的。
我查看了/etc/samba/smb.conf
,也没有发现问题出现在什么地方。将配置文件恢复到入域之前,也无法解决问题。
而且我也不打算重新安装samba, 那样的话,工作量太大了,而且会影响线上服务。
二、解决方案
无奈之下,我查看了一下/var/lib/samba
发现了许多以tdb
结尾的文件。熟悉samba的人一看就知道,这些是数据库文件。是不是这些文件中的记录在入域之后增加了某些记录而导致的权限混乱呢?
为了验证我的想法,首先,我将/var/lib/samba
这个文件夹进行了备份。然后在虚拟机里安装相同版本的samba。然后将其中的/var/lib/samba
根目录中的以tdb
结尾的文件复制到出现问题的生产环境的服务器的相应目录中。重启samba:
service smb restart
再次进行测试,一切OK!问题顺利解决!