我select了Bacula(v.5.0.2)来备份我们办公室员工的数据。
Director和存储守护进程运行在一家德国主要托pipe公司租用的基于Debian的根服务器( SERVER )上。
所有珍贵的数据,因此Bacula的文件守护进程( CLIENT )驻留在基于Debian的Samba服务器上,该服务器位于现场,并通过SOHO路由器后面的ADSL(〜768Kbit)连接到互联网(这是一个非盈利组织,在钱上)。
而且, CLIENT的互联网连接每隔24小时就被ISP断开 , 其IP地址每隔一段时间就会变化 。
我设法设置了基本的基础设施,并成功地testing了备份和恢复文件。 但是,现在是定义自动化工作的时候了,我面临着一个我无法摆脱困境的问题:
问题
假设我想为每个上class族找一份工作,并且需要备份重约10GB Samba份额。 备份级别并不重要,因为Bacula需要执行完整备份才能启动。
但是,这个初始的完全备份不会在强制断开连接之前使其通过办公室的电线,从而使作业无用。
题
有没有办法将初始工作负载分割成更小的小块,然后再设置多个作业(和文件集)?
或者更好的是,是否有可能以某种方式暂停和重新启动正在运行的工作以克服不可避免的连接损失?
还有什么我没有想到的可能会有帮助?
备份所花费的时间与正在备份的数据成正比 – 如果需要移动10G数据,则需要一些时间(networking链接的速度决定了多less时间)。
进一步bacula假设您的networking连接是可靠的 – 它不希望您的连接下降,坦率地说,这是bacula的一个合理的假设的一部分。
您的问题的正确解决scheme是更改ISP。
坦率地说,如果你的networking连接和你描述的一样不可靠(每隔24小时断开一次!),而且你没有100%的免费连接,你可能会付出高昂的代价。
如果您无法实施正确的解决scheme,最好的select是在客户端运行本地存储守护进程,并备份到磁盘上。
然后,您可以使用像rsync这样的工具将虚拟磁带文件复制到其他位置。
这个解决scheme的主要缺点是你需要(至less)一个额外的磁盘备份,你将不得不pipe理rsync作业(你可以使用Bacula中的RunAfterBackup脚本)。
根据您的需要,USB硬盘驱动器可以满足额外的磁盘。
你在你的问题中描述的其他select是有缺陷的或不可能的。
具体来说,Bacula没有“暂停”备份的概念,而将备份分成多个工作(唯一的办法就是分手)只是意味着你不会做一个子工作而不是整个工作 – 你仍然可以风如果你这样做的话,备份不会将你恢复到一个好的/一致的状态,所以你实际上并没有解决这个问题。