#! /bin/bash # This script creates a backup of this system. For usage instructions, # run `backup --help'. For a detailed description of the backup and # restore procedures, see /export/backup/snapshot/README. libdir=@LIBDIR@/backup set -e . $libdir/common.sh set +e ts=`date +%Y%m%d`; week=`date +%U` # Add version-specific tar options tar_version_options() { set -- $(tar --version | awk 'NR==1 {gsub(/\./, " ",$NF); print $NF}') if [ $# -ge 2 ]; then v=$((1 * 1000 + $2)) if [ $v -gt 1025 ]; then taroptions="$taroptions --level=$level" fi fi } load_config taroptions="-Hpax $backup_tar_options $backup_rsh_command" ########################################################### # Global variables ########################################################### # Set it to "-v" to make script verbose if [ -n "$backup_verbose" ]; then verbose=-v else verbose= fi # Set it to "echo" to initiate dry-run mode. dry_run= # Number of tar errors detected during the run tarerror=0 level=0 round=0 ########################################################### # Utility functions ########################################################### help() { cat <&2 "$0: unrecognized option $1"; exit 1;; esac shift done tar_version_options if [ -n "$backup_logfile" ]; then exec >>$backup_logfile exec 2>&1 fi logit "started" $prologue_hook for item in $backup_items do eval type=\$${item}_type ${type}_backup $item done $epilogue_hook logit "finished" # finis coronat opus