Bacula

Bacula 批量還原具有多個文件集的客戶端

  • December 6, 2015

我正在尋找一種方法來為具有多個不共享相同文件集的作業定義的客戶端執行批處理(非互動式)還原。

對於具有單個文件集的客戶端,我可以發出

restore client="example.eu" jobid=99,152 where="/tmp" select current all done yes

當管道傳輸到時,bconsole將為給定的作業 ID(屬於單個文件集)安排恢復作業。

當特定客戶端存在多個文件集時,bconsole 提示:

Using Catalog "MyCatalog"
The defined FileSet resources are:
    1: example.eu fileset_1
    2: example.eu fileset_2
    3: example.eu fileset_3
Select FileSet resource (1-3):

這使我無法將其作為批處理作業執行。

那麼,對於目錄中具有多個文件集的客戶端,我如何才能擁有相同的批處理行為呢?

我希望fileset=fileset_1在 restore 命令中有一個選項。

萬一有人在這裡結束,經過一番探勘,我最終將過程分成了幾個步驟:

  • 找到描述我需要的備份的作業 ID。(一個完整備份,可能是差異或/和增量備份的組合)
  • 在我的 bacula director 系統上找到這些作業備份的所有文件並將它們放入一個文件中。
  • userestorefile=</tmp/file_list選項告訴 bacula 獲取文件中列出的file_list文件。

restore client="example.eu" jobid=99,152 file=</tmp/file select current all done yes

我對這個解決方案並不滿意,因為我希望還原對我來說更加透明。

引用自:https://serverfault.com/questions/740951