diff options
Diffstat (limited to 'PCBSD/pc-sysinstall/backend-query/.svn/text-base/list-rsync-backups.sh.svn-base')
-rw-r--r-- | PCBSD/pc-sysinstall/backend-query/.svn/text-base/list-rsync-backups.sh.svn-base | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/PCBSD/pc-sysinstall/backend-query/.svn/text-base/list-rsync-backups.sh.svn-base b/PCBSD/pc-sysinstall/backend-query/.svn/text-base/list-rsync-backups.sh.svn-base new file mode 100644 index 0000000..6b32fb1 --- /dev/null +++ b/PCBSD/pc-sysinstall/backend-query/.svn/text-base/list-rsync-backups.sh.svn-base @@ -0,0 +1,44 @@ +#!/bin/sh +# Script which lists the backups present on a server +########################################################################### + +. ${PROGDIR}/backend/functions.sh + +SSHUSER=$1 +SSHHOST=$2 +SSHPORT=$3 + +if [ -z "${SSHHOST}" -o -z "${SSHPORT}" ] +then + echo "ERROR: Usage list-rsync-backups.sh <user> <host> <port>" + exit 150 +fi + +# Look for full-system backups, needs at minimum a kernel to be bootable +FINDCMD="find . -type d -maxdepth 6 -name 'kernel' | grep '/boot/kernel'" + +# Get a listing of the number of full backups saved +OLDBACKUPS=`ssh -o 'BatchMode=yes' -p ${SSHPORT} ${SSHUSER}@${SSHHOST} "${FINDCMD}"` +if [ "$?" = "0" ] +then + for i in ${OLDBACKUPS} + do + BACKPATH="`echo ${i} | sed 's|/boot/.*||g' | sed 's|^./||g'`" + if [ -z "${BACKLIST}" ] + then + BACKLIST="${BACKPATH}" + else + BACKLIST="${BACKLIST}:${BACKPATH}" + fi + done + + if [ -z "${BACKLIST}" ] + then + echo "NONE" + else + echo "$BACKLIST" + fi + +else + echo "FAILED" +fi |