二、实例演示bacula的不完全恢复功能
不完全恢复的操作过程与完全恢复基本一致,不同的是,在指定恢复JobId时,不完全恢复只需恢复到指定的某个JobId即可可以用增量备份和差异备份来实现不完全恢复,这里以差异备份为例,操作过程如下:
*status Status available for: 1: Director 2: Storage 3: Client 4: All Select daemon type for status (1-4): 1 f10-64-build-dir Version: 3.0.2 (18 July 2009) x86_64-unknown-linux-gnu RedHat Daemon started 21-Aug-09 15:01, 3 Jobs run since started. Heap: heap=442,368 smbytes=105,435 max_bytes=237,737 bufs=280 max_bufs=312 Scheduled Jobs: Level Type Pri Scheduled Name Volume =============================================================================== Incremental Backup 10 21-Aug-09 23:05 Client1 cicro4 Incremental Backup 10 21-Aug-09 23:05 Client cicro4 Incremental Backup 10 21-Aug-09 23:05 BackupCatalog cicro4 Running Jobs: Console connected at 21-Aug-09 16:32 Console connected at 21-Aug-09 17:19 No Jobs running. Terminated Jobs: JobId Level Files Bytes Status Finished Name ==================================================================== 66 2 38.77 K OK 19-Aug-09 16:59 RestoreFiles 67 Full 25 145.5 M OK 21-Aug-09 13:41 Client1 68 Incr 2 3.908 M OK 21-Aug-09 14:20 Client1 69 Full 26 149.4 M OK 21-Aug-09 14:32 Client 70 Diff 2 3.908 M OK 21-Aug-09 14:34 Client 71 Diff 3 7.817 M OK 21-Aug-09 14:35 Client 72 Diff 4 11.72 M OK 21-Aug-09 14:35 Client 73 Incr 4 11.72 M OK 21-Aug-09 15:34 Client1 74 29 4.092 G OK 21-Aug-09 16:35 RestoreFiles 75 29 4.092 G OK 21-Aug-09 16:52 RestoreFiles
从这里可以看出,JobId 为69到JobId为72都属于差异备份。在进行不完全恢复时,希望将数据恢复到JobId 为71的状态下,可以执行如下操作:
*restore Automatically selected Catalog: MyCatalog Using Catalog "MyCatalog" First you select one or more JobIds that contain files to be restored. You will be presented several methods of specifying the JobIds. Then you will be allowed to select which files from those JobIds are to be restored. To select the JobIds, you have the following choices: 1: List last 20 Jobs run 2: List Jobs where a given File is saved 3: Enter list of comma separated JobIds to select 4: Enter SQL list command 5: Select the most recent backup for a client 6: Select backup for a client before a specified time 7: Enter a list of files to restore 8: Enter a list of files to restore before a specified time 9: Find the JobIds of the most recent backup for a client 10: Find the JobIds for a backup for a client before a specified time 11: Enter a list of directories to restore for found JobIds 12: Select full restore to a specified JobId 13: Cancel Select item: (1-13): 3 Enter JobId(s), comma separated, to restore: 69,71 #这里指定数据恢复到什么程度 You have selected the following JobIds: 69,71 Building directory tree for JobId(s) 69,71 ... 25 files inserted into the tree. You are now entering file selection mode where you add (mark) and remove (unmark) files to be restored. No files are initially added, unless you used the "all" keyword on the command line. Enter "done" to leave this mode. cwd is: / $ mark cicro 28 files marked. $ done Bootstrap records written to /opt/bacula/var/bacula/working/f10-64-build-dir.restore.3.bsr The job will require the following Volume(s) Storage(s) SD Device(s) =========================================================================== cicro4 dbsd dbdev Volumes marked with "*" are online. 28 files selected to be restored. Defined Clients: 1: dbfd 2: dbfd1 Select the Client (1-2): 1 Run Restore job JobName: RestoreFiles Bootstrap: /opt/bacula/var/bacula/working/f10-64-build-dir.restore.3.bsr Where: /tmp/bacula-restores Replace: always FileSet: dbfs Backup Client: dbfd Restore Client: dbfd Storage: dbsd When: 2009-08-21 17:21:16 Catalog: MyCatalog Priority: 10 Plugin Options: *None* OK to run? (yes/mod/no): mod Parameters to modify: 1: Level 2: Storage 3: Job 4: FileSet 5: Restore Client 6: When 7: Priority 8: Bootstrap 9: Where 10: File Relocation 11: Replace 12: JobId 13: Plugin Options Select parameter to modify (1-13): 9 Please enter path prefix for restore (/ for none): / Run Restore job JobName: RestoreFiles Bootstrap: /opt/bacula/var/bacula/working/f10-64-build-dir.restore.3.bsr Where: Replace: always FileSet: dbfs Backup Client: dbfd Restore Client: dbfd Storage: dbsd When: 2009-08-21 17:21:16 Catalog: MyCatalog Priority: 10 Plugin Options: *None* OK to run? (yes/mod/no): yes Job queued. JobId=76
最后,查看恢复的路径可以发现,已经将数据恢复到了指定的时间段内,不完全恢复工作完成。
至此,bacula的安装、配置和使用已经介绍完毕。