实战演示Bacula完全恢复与不完全恢复功能

一、实例演示bacula的完全恢复功能

1、通过差异备份进行完全恢复
操作步骤如下: 

*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, 1 Job run since started.   Heap: heap=253,952 smbytes=84,808 max_bytes=85,641 bufs=266 max_bufs=279  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 16:33  No Jobs running.   Terminated Jobs:   JobId  Level    Files      Bytes   Status   Finished        Name   ====================================================================      64                3    77.44 K  OK       19-Aug-09 16:57 RestoreFiles      65                1         0   OK       19-Aug-09 16:58 RestoreFiles      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   

从这里的备份状态可知,JobId 为69的任务是一个完全备份, 而JobId 为70、71、72的3个任务是差异备份。下面进行恢复操作:
 

* 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,72  You have selected the following JobIds: 69,72   

#这里仅仅指定了差异备份的第一个全备份和差异备份的最后一个备份的JobId,
#即可完全恢复的数据
 

Building directory tree for JobId(s) 69,72 ...    26 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  29 files marked.  $ done  Bootstrap records written to /opt/bacula/var/bacula/working/f10-64-build-dir.restore.1.bsr  The job will require the following     Volume(s)                 Storage(s)                SD Device(s)  =======================================================================      cicro4                    dbsd                      dbdev                      Volumes marked with "*" are online.  29 files selected to be restored.  Defined Clients:  #指定恢复到哪个FD上去       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.1.bsr  Where:           /tmp/bacula-restores  Replace:         always  FileSet:         dbfs  Backup Client:   dbfd  Restore Client:  dbfd  Storage:         dbsd  When:            2009-08-21 16:35:07  Catalog:         MyCatalog  Priority:        10  Plugin Options:  *None*  OK to run? (yes/mod/no): mod   #选择要将数据恢复到的路径,bacula默认恢复到前面指定  #的/tmp/bacula-restores目录下,在这里,直接将数据恢复到/cicro目录下,  #因此选择“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): /    #这里指定/即可,因为前面已经设置了一个/cicro.  Run Restore job  JobName:         RestoreFiles  Bootstrap:       /opt/bacula/var/bacula/working/f10-64-build-dir.restore.1.bsr  Where:             Replace:         always  FileSet:         dbfs  Backup Client:   dbfd  Restore Client:  dbfd  Storage:         dbsd  When:            2009-08-21 16:35:07  Catalog:         MyCatalog  Priority:        10  Plugin Options:  *None*  OK to run? (yes/mod/no): yes  Job queued. JobId=74 这样,一个完全的恢复就通过差异备份方式完成了。可以在远程备份机器(即FD端)上看到,数据已经恢复了。  

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/10354d6d514a4701fd5ed4a64820d1ae.html