升级后,bacular-dir无法启动(Ubuntu 16.04)

时间:2018-05-09 11:21:51

标签: postgresql ubuntu ubuntu-16.04 bacula

我已经花了两天时间试图让Bacula从Ubuntu 14升级到Ubuntu 16.04后再次运行,但我运气不好并需要帮助。

自从Bacula的版本发生变化后,我决定使用Ubuntu默认配置文件从头开始,并将旧的配置文件移动到另一个文件夹中。 apt installer / package-configurator正确填写bacula-dir.conf,bacula-fs.conf和bacula-ds.conf中的所有守护进程名称和密码

问题: Bacula-dir无法正常启动并且似乎挂起。 症状是:

  1. 未创建任何日志文件(/var/log/bacula/bacular.log)
  2. bconsole 连接失败(错误:
  3.   

    导演授权问题。
      密码很可能不同意。
      如果您使用的是TLS,则在TLS握手期间可能存在证书验证错误。

    但是我已经检查了他们匹配的Ubuntu安装/配置脚本创建的密码。

    将“local bacula bacula md5”行添加到 /etc/postgresql/9.5/main/pg_hba.conf 后,可以从命令行($ psql -d bacula -U bacula访问postgresql数据库使用与bacula-dir.conf中给出的密码相同的密码。

    最令人费解的是:我在另一台测试机上尝试了相同的安装/配置步骤,所有这些都按预期工作,我可以连接bconsole。

    在我升级的服务器上但是我找不到导致问题的原因!

    到目前为止,我已尝试过以下内容:

    1. 完全清除所有Bacula软件包,然后手动搜索并删除/ etc / bacula /和/ var /中的所有旧配置/日志/运行文件,然后重新安装软件包
    2. 从Bacula源包中下载脚本drop_postgresql_tablesmake_postgresql_tables并删除并使用它们重新创建数据库表
    3. 使用$ ps aux | grep bacula列出正在运行的Bacula守护进程并将其与测试计算机进行比较
    4. 使用debug-option(-d 200)运行bacula-dir - 请参阅随附的输出
    5. 反复检查文件/文件夹权限,并与工作测试计算机进行比较
    6. 防火墙?所有连接都在同一台机器上,因此不应该是原因?
    7. 问题:我的配置可能出现什么问题?如何缩小或隔离问题?

      最后我要提的是:Bacula在升级到Ubuntu 16之前和之后都与mysql一起使用,使用了PostgreSQL。删除(清除)所有旧的Bacula软件包,用bacula-common-pgsql,bacula-director-pgsql和bacula-sd-pgsql替换bacula ...-mysql软件包。此外,数据库是从头开始的,但这仍然是某种原因吗?

      syslog中的Bacula-dir调试输出:

      bacula-director[22438]:  * Starting Bacula Director... bacula-dir
      bacula-director[22438]: bacula-dir: dird.c:194-0 Debug level = 200
      bacula-director[22438]: bacula-dir: address_conf.c:264-0 Initaddr 0.0.0.0:9101
      bacula-director[22438]: bacula-dir: runscript.c:284-0 runscript: debug
      bacula-director[22438]: bacula-dir: runscript.c:285-0  --> RunScript
      bacula-director[22438]: bacula-dir: runscript.c:286-0   --> Command=/etc/bacula/scripts/make_catalog_backup.pl MyCatalog
      bacula-director[22438]: bacula-dir: runscript.c:287-0   --> Target=
      bacula-director[22438]: bacula-dir: runscript.c:288-0   --> RunOnSuccess=1
      bacula-director[22438]: bacula-dir: runscript.c:289-0   --> RunOnFailure=0
      bacula-director[22438]: bacula-dir: runscript.c:290-0   --> FailJobOnError=1
      bacula-director[22438]: bacula-dir: runscript.c:291-0   --> RunWhen=2
      bacula-director[22438]: bacula-dir: runscript.c:284-0 runscript: debug
      bacula-director[22438]: bacula-dir: runscript.c:285-0  --> RunScript
      bacula-director[22438]: bacula-dir: runscript.c:286-0   --> Command=/etc/bacula/scripts/delete_catalog_backup
      bacula-director[22438]: bacula-dir: runscript.c:287-0   --> Target=
      bacula-director[22438]: bacula-dir: runscript.c:288-0   --> RunOnSuccess=1
      bacula-director[22438]: bacula-dir: runscript.c:289-0   --> RunOnFailure=0
      bacula-director[22438]: bacula-dir: runscript.c:290-0   --> FailJobOnError=1
      bacula-director[22438]: bacula-dir: runscript.c:291-0   --> RunWhen=1
      bacula-director[22438]: bacula-dir: jcr.c:128-0 read_last_jobs seek to 192
      bacula-director[22438]: bacula-dir: jcr.c:135-0 Read num_items=0
      bacula-director[22438]: bacula-dir: dir_plugins.c:148-0 Load dir plugins
      bacula-director[22438]: bacula-dir: dir_plugins.c:150-0 No dir plugin dir!
      bacula-director[22438]:    ...done.
      bacula-director[22438]: bacula-dir: lockmgr.c:728-0 Exit check_deadlock.
      bacula-director[22438]: bacula-dir: postgresql.c:1117-0 db_init_database first time
      bacula-director[22438]: bacula-dir: postgresql.c:229-0 pg_real_connect done
      bacula-director[22438]: bacula-dir: postgresql.c:231-0 db_user=bacula db_name=bacula db_password=XXXXXX
      bacula-director[22438]: bacula-dir: sql_create.c:345-0 In create mediatype
      bacula-director[22438]: bacula-dir: sql_create.c:349-0 selectmediatype: SELECT MediaTypeId,MediaType FROM MediaType WHERE MediaType='File1'
      bacula-director[22438]: bacula-dir: sql_create.c:345-0 In create mediatype
      bacula-director[22438]: bacula-dir: sql_create.c:349-0 selectmediatype: SELECT MediaTypeId,MediaType FROM MediaType WHERE MediaType='File2'
      bacula-director[22438]: memo-dir: dird.c:323-0 Start UA server
      bacula-director[22438]: memo-dir: job.c:1528-0 wstorage=File1
      bacula-director[22438]: memo-dir: bnet_server.c:87-0 Addresses 127.0.0.1:9101
      bacula-director[22438]: memo-dir: job.c:1537-0 wstore=File1 where=Job resource
      bacula-director[22438]: memo-dir: job.c:1211-0 JobId=0 created Job=*JobMonitor*.2018-05-09_11.45.24_01
      bacula-director[22438]: memo-dir: dird.c:334-0 wait for next job
      

1 个答案:

答案 0 :(得分:0)

问题解决了。该问题特定于Ubuntu 16.04。默认的* .deb软件包(4build1)似乎有缺陷,从未奏效。此外,使用命令$ sudo apt-get update && sudo apt-get upgrade的更新过程也不起作用。 手动将基本版本的Bacula * .deb文件替换为Ubuntu 16.04最新更新(4ubuntu0.1)的文件解决了这个问题。

  • 基础版:7.0.5 + dfsg-4build1(不工作!)
  • 更新版本:7.0.5 + dfsg-4ubuntu0.1工作 - >手动安装!!

首先手动下载以下软件包,然后使用以下命令安装:

$ dpkg -i bacula-common_7.0.5+dfsg-4ubuntu0.1_amd64.deb
          bacula-common-pgsql_7.0.5+dfsg-4ubuntu0.1_amd64.deb
          bacula-director-common_7.0.5+dfsg-4ubuntu0.1_amd64.deb
          bacula-sd_7.0.5+dfsg-4ubuntu0.1_amd64.deb
          bacula-fd_7.0.5+dfsg-4ubuntu0.1_amd64.deb
          bacula-server_7.0.5+dfsg-4ubuntu0.1_all.deb
          bacula-console_7.0.5+dfsg-4ubuntu0.1_amd64.deb
          bacula-director-pgsql_7.0.5+dfsg-4ubuntu0.1_amd64.deb
          bacula-sd-pgsql_7.0.5+dfsg-4ubuntu0.1_amd64.deb
          bacula-console-qt_7.0.5+dfsg-4ubuntu0.1_amd64.deb    
$ sudo apt-get -f install

现在Bacula像往常一样工作!