]> Dogcows Code - chaz/tar/blobdiff - scripts/backup.sh.in
Bugfixes.
[chaz/tar] / scripts / backup.sh.in
index e78c3268d73f43b1ecafdb0a3456975978337c34..08624278c0d4e9ffba1b0978f74c496031291b8f 100644 (file)
@@ -1,6 +1,6 @@
 #! /bin/sh
 # This program is part of GNU tar
-# Copyright 2004, Free Software Foundation
+# Copyright 2004, 2005, Free Software Foundation
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -14,8 +14,8 @@
 #
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+# 02110-1301, USA.
 
 PROGNAME=`basename $0`
 CONFIGPATH="$SYSCONFDIR/backup"
@@ -27,25 +27,25 @@ LOGPATH=${CONFIGPATH}/log
 
 # Default functions for running various magnetic tape commands
 mt_begin() {
-    mt -f "$1" retension
+    $MT -f "$1" retension
 }
 
 mt_rewind() {
-    mt -f "$1" rewind
+    $MT -f "$1" rewind
 }
 
 mt_offline() {
-    mt -f "$1" offl
+    $MT -f "$1" offl
 }
 
 mt_status() {
-    mt -f "$1" status
+    $MT -f "$1" status
 }
 
 # The main configuration file may override any of these variables
 MT_BEGIN=mt_begin
 MT_REWIND=mt_rewind
-MT_OFFLINE=mt_offl
+MT_OFFLINE=mt_offline
 MT_STATUS=mt_status
 
 # Insure `mail' is in PATH.
@@ -106,6 +106,10 @@ test_root() {
     fi
 }
 
+root_fs() {
+    echo "${ROOT_FS}$1" | tr -s /
+}    
+
 advice() {
     echo "Directory $1 is not found." >&2
     cat >&2 <<EOF
@@ -168,9 +172,23 @@ init_common() {
     if [ \( x"$BACKUP_DIRS" = x \) -a \( x"$BACKUP_FILES" = x \) ]; then
        bailout "Neither BACKUP_DIRS nor BACKUP_FILES specified"
     fi
-    if [ "$RSH" = "" ]; then
+    if [ -z "$RSH" ]; then
        RSH=rsh
+       MT_RSH_OPTION=
+    else
+       MT_RSH_OPTION="--rsh-command=$RSH"
+    fi
+    if [ -z "$TAPE_FILE" ]; then
+       TAPE_FILE=/dev/tape
     fi
+
+    # If TAPE_FILE is a remote device, update mt invocation accordingly
+    : ${MT:=mt}
+    case $TAPE_FILE in
+    *:*) MT="$MT $MT_RSH_OPTION";;
+    *)   ;;
+    esac
+
     POSIXLY_CORRECT=1
     export POSIXLY_CORRECT
 }
@@ -274,7 +292,7 @@ flush_level_log() {
 # usage: get_dump_time LEVEL
 get_dump_time() {
     ls -r ${LOGPATH}/log-*-level-$1 \
-        | head -1 \
+        | head -1 \
        | sed "s,.*log-\(.*\)-level-$1,\1,"
 }
 
@@ -336,7 +354,7 @@ license() {
 
     You should have received a copy of the GNU General Public License
     along with this program; if not, write to the Free Software
-    Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-    02111-1307, USA.
+    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+    02110-1301, USA.
 EOF
 }
This page took 0.022514 seconds and 4 git commands to generate.