bconsole连不上director八成是密码不一致,需严格核对bacula-dir.conf与bconsole.conf中director段的password值(含大小写、空格、引号),修改后必须重启bacula-director服务。

bconsole 连不上 Director,八成是密码没对齐,不是装错了,也不是网络不通。
Director 和 bconsole 密码必须完全一致
现象是运行 bconsole 后卡在 Failed to connect to Director daemon 或直接报 Authentication failed。根本原因几乎只出在两处配置文件的 Password 值不一致:
-
/etc/bacula/bacula-dir.conf中Director段的Password = "xxx" -
/etc/bacula/bconsole.conf中Director段的Password = "xxx"
注意:大小写、前后空格、引号类型(双引号还是单引号)、末尾换行符都算差异。别照着教程复制 "storagepassword" 这类占位符——它不是密码,只是示意。改完必须执行 sudo systemctl restart bacula-director,否则配置不加载。
FileDaemon 启动失败,提示 Could not bind to port 9102
这不是配置写错,而是系统策略拦住了端口,尤其在 CentOS/RHEL 或启用了 SELinux 的托管服务器上高频出现。先确认端口没被占:sudo ss -tuln | grep :9102。再按顺序排查:
- SELinux 启用时,需注册端口上下文:
sudo semanage port -a -t bacula_port_t -p tcp 9102;临时验证可关 SELinux:sudo setenforce 0 - 防火墙要放行:
sudo firewall-cmd --add-port=9102/tcp --permanent && sudo firewall-cmd --reload - 检查
/etc/bacula/bacula-fd.conf中FDAddress是否设为127.0.0.1——如果 Director 不在本机,得改成实际 IP 或0.0.0.0(注意暴露风险)
备份作业成功但 list files 返回空列表
说明数据传过去了,Catalog 却没记下元数据。常见于两个硬伤:
-
FileSet定义里路径写错,比如用了相对路径、漏了结尾斜杠、或权限不够读取目标目录 - 运行
bacula-fd的用户(通常是bacula)对要备份的目录没有读取权限,导致扫描结果为空
验证方法:手动用 bacula 用户执行 ls -l /your/backup/path,看是否能列出内容。别依赖 status director 显示 “OK”,它只表示服务活着,不表示 Catalog 写入成功。
最易被忽略的是 Catalog 数据库连接本身——哪怕密码对了、端口通了,catalog 段里 dbuser 和 dbpassword 错一个字符,run job 仍会静默失败,日志里只有一句 Database connection failed,连带所有元数据丢失。











