启动Samba时出错:Zentyal 5环境下新增同版本DC节点失败求助
解决Zentyal 5(Samba 4.6.7-Ubuntu)添加额外DC时的双报错问题
我之前处理过好几起Zentyal+Samba多域控制器部署的类似问题,针对你遇到的这两个关联报错,咱们一步步拆解解决:
一、现有DC的「gidNumber设置失败」报错处理
设置组CN=dns_EXAMPLE,CN=Users,DC=example,DC=com的gidNumber失败,更新LDAP时出错:服务器无法找到请求中指定的对象
这个问题大概率是DNS专用组缺失或配置异常导致的,解决步骤:
- 检查并创建缺失的DNS组:
先用命令行确认该组是否存在:
如果返回空结果,直接在Zentyal的「用户和组」界面手动创建这个组,路径选ldbsearch -H /var/lib/samba/private/sam.ldb "CN=dns_EXAMPLE"CN=Users,DC=example,DC=com,参考域内其他DNS相关组的gidNumber设置一个不冲突的值。 - 修复已存在组的gidNumber:
如果组存在但gidNumber无效,先通过Zentyal界面删除该组的gidNumber条目,再重新设置。也可以用ldbmodify命令直接修改LDAP条目,确保gid在域的可用范围内(避免和其他组重复)。 - 验证Samba权限并重启服务:
执行命令重启Samba域控制器服务,确保权限生效:systemctl restart samba-ad-dc
二、待加入DC的「计算机账户密码获取失败」报错处理
无法在机密数据库中找到计算机账户:获取计算机账户密码失败
这个问题核心是待加入DC的计算机账户未正确预创建或密码不匹配,解决步骤:
- 预创建DC计算机账户:
在现有DC的Zentyal「域控制器」->「计算机」界面,手动创建待加入DC的主机名对应的账户,类型选择「域控制器」,记录好设置的密码(如果自动生成务必保存)。 - 确保加入命令参数正确:
执行加入命令时,使用域管理员账户和正确的计算机账户密码,示例命令:
注意输入的域管理员密码和计算机账户密码要和现有DC上的配置完全一致。samba-tool domain join example.com DC -U Administrator - 检查DNS解析配置:
待加入DC的DNS必须指向现有DC的IP地址,临时修改/etc/resolv.conf:
确保能正常解析echo "nameserver 现有DC的IP地址" > /etc/resolv.confexample.com和域控制器的主机名。 - 重置计算机账户密码:
如果还是报错,在现有DC上重置待加入DC的计算机账户密码:
用新密码重新执行加入命令。samba-tool computer setpassword <待加入DC主机名>$ -U Administrator
总结
这两个报错通常是连锁反应:DNS组异常导致现有DC无法同步配置,进而影响待加入DC的计算机账户验证。按照上面的顺序逐一排查,基本能解决问题。
内容的提问来源于stack exchange,提问作者Pilling Fine




