Bacula导演守护进程无法validationWindows 7客户端

我的导演守护进程在一台Ubuntu机器上运行,客户端是一台Windows 7机器。 两台机器都在同一个子网上。 我无法在服务器和客户端之间进行身份validation。 我在服务器端得到的错误如下:

10-May 12:00 mydir-dir JobId 6395: Start Backup JobId 6395, Job=server-bkp.2013-05-10_12.00.00_13 10-May 12:00 mydir-dir JobId 6395: Using Device "RAID_Device" 10-May 12:00 mydir-dir JobId 0: Fatal error: Unable to authenticate with File daemon at "myserver.ip.address:9102". Possible causes: Passwords or names not the same or Maximum Concurrent Jobs exceeded on the FD or FD networking messed up (restart daemon). Please see http://www.bacula.org/en/rel-manual/Bacula_Freque_Asked_Questi.html#SECTION003760000000000000000 for help. *q root@cosmo:~# telnet my-client-hostname.domain 9102 Trying myclient.ip.address... Connected to my-client-hostname.domain. Escape character is '^]'. ^[^[ Connection closed by foreign host. 

我的Windows 7客户机上的bconsole.conf文件:

 Director { Name = mydir-dir DIRport = 9101 address = mydir.domain Password = "my_secret_password" } 

我的客户端bacula-fd.conf文件如下:

 # Main Director Director { Name = mydir-dir Password = "my_secret_password" } # File Daemon FileDaemon { Name = my-client-hostname-fd FDport = 9102 WorkingDirectory = "C:\\Program Files\\Bacula\\working" Pid Directory = "C:\\Program Files\\Bacula\\working" Maximum Concurrent Jobs = 10 } # Where to send messages. Messages { Name = Standard director = mydir-dir = all, !skipped, !restored } 

这是我的/etc/bacula/bacula-dir.conf在服务器上显示如下。 请注意,一些不必要的信息被删除。

 # Main Director for backup control. Director { Name = mydir-dir DIRport = 9101 QueryFile = "/etc/bacula/scripts/query.sql" WorkingDirectory = "/home/bacula/bacula/working" PidDirectory = "/var/run/bacula" Password = "my_secret_password" Messages = Standard } # Restricted Director for monitoring. Console { Name = mydir-mon Password = "my_other_password" CommandACL = status, .status } # Catalog within the MySQL database Catalog { Name = MYDIR_Catalog DB Name = bacula DB Address = localhost user = "MY_USER_NAME" password = "MY_DB_PASSWORD" } # Storage to use for backup Storage { Name = RAID_Storage Password = "MY_SD_PASSWORD" Address = mydirhost.domain SDPort = 9103 Device = RAID_Device Media Type = File } # Include client, job, schedule and fileset information @/etc/bacula/clients/MY-CLIENT-HOSTNAME.conf 

最后,我的/etc/bacula/clients/MY-CLIENT-HOSTNAME.CONF如下所示。 再次,一些不必要的信息被省略。

 # Client information for my-client-hostname Client { Name = my-client-hostname Password = "my_secret_password" Address = my-client-hostname.domain FDPort = 9102 Catalog = MYDIR_Catalog } 

*请注意,我在所有文件中都使用了相同的“my_secret_password”。

我已经检查了防火墙和通过telnetauthentication,似乎工作正常。 如果有人能告诉我我做错了,我会非常高兴!

错误消息说:

可能的原因:
密码或名称不一样或
最大并发作业超过FD或
FDnetworking搞砸了(重启守护进程)。

导演的configuration:

 # Client information for my-client-hostname Client { Name = my-client-hostname Password = "my_secret_password" Address = my-client-hostname.domain FDPort = 9102 Catalog = MYDIR_Catalog } 

您的文件守护进程中的configuration:

 ....other stuff..... # File Daemon FileDaemon { Name = my-client-hostname-fd FDport = 9102 WorkingDirectory = "C:\\Program Files\\Bacula\\working" Pid Directory = "C:\\Program Files\\Bacula\\working" Maximum Concurrent Jobs = 10 } ....more stuff..... 

所以它看起来像,除非你错误的编辑你的名字不匹配的东西。
(不要觉得不舒服,我第一次扫描你的问题也没有看到,而且我自己也浪费了几个小时的时间。

有一点老问题,但有人可能仍在寻找答案。 这可能是Windows防火墙的问题…我知道你已经说过你检查了防火墙。 我在我的Ubuntu上用telnet试过端口,似乎喜欢它是开放的,但它没有工作。 添加Windows fw规则后,允许连接到%ProgramFiles%\ Bacula \ bacula-fd.exe导演开始进行身份validation。 所以我会试一试:)

很确定我见过类似的东西。 如果你有一个命令作为在主机上运行的作业的一部分运行(比如“在客户端运行之前运行”语句),如果该命令已经暂停,或者以某种方式停止,即使重启剂。

如果发生这种情况,“before job”命令将inheritance代理运行的监听文件描述符,并将其保持打开状态。 如果你重新启动bacula,Windows似乎并不在意已经有一个绑定到监听地址的过程,bacula应该监听并且让bacula启动。

然而,你发送给bacula的所有stream量实际上是由一个老的bacula而不是bacula本身的stream浪命令收到的。

解决这个问题。

  • 停止Windows机器上的bacula代理。
  • 在Windows主机上运行netstat并查找在端口9102上侦听的任何进程。
  • 终止这些进程。
  • 开始bacula。

另一个问题可能是bacula已经没有最大的连接,但是您可以在这种情况下重新启动代理来解决这个问题。

我也在工作bacula服务器客户端备份工具。 我意识到,如果你的文件守护进程比导向器和存储守护进程更新,那么就会抛出这个错误。 尝试得到bacula-fd 5.2版本,使其与SD和导演兼容! 希望能帮助到你!