SSH Authentication is public key, without passphrase; private key resides on a softraid encrypted partition.
Code:
#!/bin/sh
#
# This script is executed via the /etc/daily infrastructure; calls
# are made from /etc/daily.local, /etc/weekly.local, and /etc/monthly.local
#
# All filesystems back up at the same dump level:
# Monthly 0-level, 1st day of month.
# Weekly 1-level, every Saturday
# Monthly and weekly are manually stored on dvd-rw
# Daily: may be stored optically, but only ad hoc.
#
# 8 and 9 are reserved for ad-hoc dump use.
#
############################################
#
# $1 = "daily" | "weekly" | "monthly" | "8" | "9"
#
# "8" or "9" are from manual operation
############################################
level=99
if [ $1 = daily ]; then
case `date | awk '{print $1}'` in
Sun)
level=3
;;
Mon)
level=2
;;
Tue)
level=5
;;
Wed)
level=4
;;
Thu)
level=7
;;
Fri)
level=6
;;
esac
elif [ $1 = monthly ]; then
level=0
elif [ $1 = weekly ]; then
level=1
fi
if [ "$level" != "99" ]; then
dump -$level -h 0 -auf - / | gzip -9 | \
ssh bkup@server "umask 177 ; cat > lap-two/root.$level.gz"
dump -$level -h 0 -auf - /usr | gzip -9 | \
ssh bkup@server "umask 177 ; cat > lap-two/usr.$level.gz"
dump -$level -h 0 -auf - /var | gzip -9 | \
ssh bkup@server "umask 177 ; cat > lap-two/var.$level.gz"
dump -$level -auf - /home/ | gzip -9 | \
ssh bkup@server "umask 177 ; cat > lap-two/home.$level.gz"
dump -$level -auf - /home/crypt | gzip -9 | \
ssh bkup@server "umask 177 ; cat > lap-two/crypt.$level.gz"
fi