Backup3G FAQ

This page was last modified 04:13, 14 September 2007.

From Documentation

Jump to: navigation, search


How do I perform a recovery from a backup without Backup3G?

Performing a restore without Backup3G can be easily accomplished as all backup methods provided make use of common Unix commands. The formats involved are cpio, tar or dump. However, because of the flexibility of setting up backups through Backup3G, a backup may be comprised of multiple format tape files, and even across multiple volumes. Then the main issue in recovering files at the command line level is not so much knowing the commands, but knowing the layout of a given tape, or set of tapes, and hence the number of tape files that must be skipped. Following are the commands required to recover in full a tape file as backed up using a provided backup method.

Recovery Commands

Let us assume that the format and layout of the backup tape is known. Firstly you need to change directory to the base directory you are about to recover.

cd <base directory>

Secondly, you need to skip to the to the beginning of the appropriate tape file. Remember that the electronic media label is the first tape file. For example, you need to recover /usr which is the third step in your backup, therefore you need to skip to the beginning of the fourth tape file.

mt -f <no-rewind device> fsf 3 


mt -t <no-rewind device> fsf 3

on HP/UX or

dd if=<no-rewind device> of=/dev/null 

three times. Then recover the tape file according to the backup format as follows. First change into the directory into which you want to restore the files. For a cpio backup use the following command to recover in full:

dd if=<no-rewind device> ibs=<bs> | cpio -icdum 

For a tar backup use the following command to recover in full:

dd if=<no-rewind device> ibs=<bs> | tar xpf - 

For a dump backup use the following command to recover in full:

dd if=<no-rewind device> ibs=<bs> | ufsrestore -xf - 

for SVR4 versions of Unix, or

dd if=<no-rewind device> ibs=<bs> | restore -xf - 

for SVR3 and Berkley versions of Unix. Where <bs> is the blocksize associated with the media type multiplied by 1024. For example, if your DAT media type has a blocksize of 32 kbytes associated with it then <bs> will be 32768.

How do I print a catalogue of my backup tapes?

COSmanager can simplify this by automatically printing a log of a media set contents immediately after a backup has completed. To do this place the following command in the At-end cmd for the backup job definition.

( medrep -d 0 ; FSdrive $Drive list ) | asuser cosmos $PRINTCMD 

Or you can key in the script shown at the end of this section called ~cosmos/local/bin/medcat and use the following command in either the At-end cmd or the At-unload cmd of the backup job definition. Remember to make the script executable.

( banner $Set_ID ; medcat $Set_ID ; FSdrive $Drive list ) | asuser cosmos $PRINTCMD 

An example of this media contents log is shown below. The printout also shows the tape drive operations commands for the backup drive. Knowing these and the devices involved will be useful when, for example, you need to recover /var/spool - the fifth tape file.

Media written in the last 0 days. #1054 DAT-hi Written: 17/08/94 Expires: 24/08/94 Location: FS
Full backup of gomez using portable cpio
File 2  17/08/94-00:01  full dump          gomez:/
        Full backup of /
File 3  17/08/94-00:13  portable full cpio gomez:/usr
        Full backup of /usr
File 4  17/08/94-00:18  portable full cpio gomez:/opt
        Full backup of /opt
File 5  17/08/94-00:53  full tar           gomez:/var/spool
        Full backup of /var/spool
File 6  17/08/94-02:00  portable full cpio gomez:/local
        Full backup of /local
Drive            dat (Sun DAT unit)
Type             DAT-hi
Host             gomez
Device           /dev/rmt/1
No-rewind device /dev/rmt/1n
Drive name       dat
Operator message DAT drive needs attention
Drive class      mt_tape (Tape operations via MT(1) command)

----- Operations ----------------------------------------------------

Status           mt -f $Device_nr status
Rewind           mt -f $Device_nr rewind
Skip forward     mt -f $Device_nr fsf $N
Skip backward    mt -f $Device_nr bsf $N
Unload media     mt -f $Device_nr offline
Where $Device refers to the device /dev/rmt/1 above and $Device_nr refers to the no-rewind device /dev/rmt/1n. 
In the Skip  forward and Skip backward operation, $N refers to the number of tape files to be skipped.

Script ~cosmos/../backup_3.2/local/bin/medcat

#! /bin/sh
# medcat.sh
# Copyright (c) 1991-1994 Functional Software
# All Rights Reserved
# Media reports
# ident "@(#)medcat.sh 1.1 (Functional Software - FSadmin) 94/08/30"

USAGE="Usage: medcat Set_ID" 

if [ -z "$1" ]; then
  echo $USAGE >&2
  exit 1

SORTPARMS="Written Set_ID Sequence File"

db_sel media "Set_ID == \"$1\" && Usage != \"scratch\"" | \
db_join -n - medcont Number | \
db_sort - $SORTPARMS | \
db_rpt - $APPL_HOME/report/$RPTPGM

How do I accomodate for disaster recovery? (draft)

A backup must contain the following:

  1. file system
  2. COSmanager directory structure
  3. audit trail directory /usr/spool/log

Have on hand the hardcopy catalogue of this tape's contents.

Initially recover the root file system, then COSmanager and the audit trail directory. See FAQ How do I perform a recovery from backup without Backup3G to do this.

After recovering COSmanager, you must acknowledge the backup job that performed this backup so that the status tables are cleared. This is done by performing the option Acknowledge job completion on the Manage removable media jobs menu. This will return Backup3G to the status just after the above backup was completed.

You can now use Backup3G to perform the recovery of the rest of your system. This may mean applying incremental backups to full backups.

How do I perform an interactive dump recovery?

Setup new recovery method as follows:

Method:         dump interactive
Description:    Recover interactive from dump
Format:         dump
Index Command:
Full Recovery:  cd $Directory ; ufsrestore -ivf $Device_nr < /dev/tty
Selected Rcvry:
Use STDOUT?     no
Remote support? no
Run on host:    file_host

How can I get a report detailing steps of all backup jobs run across my Data Center?

Setup an at-request duty that calls the following script:

for host in `db_sel -h hostinfo "Admintype != \"\"" Hostname`;
  for bujob in `FSremote $host "db_proj -h backup Job"`;
    echo "Host: $host\n\n"
    FSremote $host "showback $bujob"
    echo "\n\n"
done | scroll -H0

How can I get a background backup job to output the log to standard out?

Some people wish to capture the backup log to other than the log file itself. Either for it to be mailed to a user or to be captured by a task/batch scheduler system. This can be done by a minor change to backup_3.2/bin/FSbackup. Change the line (around line 206 in the background portion of the case statement)

setpgrp runback ${load_now:+-L} "$Drive" $ID "$Job" >$LOG 2>&1


setpgrp runback ${load_now:+-L} "$Drive" $ID "$Job" 2>&1 | tee $LOG

CPIO versus TAR versus DUMP (draft)

Advantages of CPIO:

Disadvantages of CPIO:

Disadvantages of TAR:

Advantages of DUMP:

Disadvantages of DUMP: