Skip to content
Snippets Groups Projects
Commit 5a283c38 authored by Per Cederqvist's avatar Per Cederqvist
Browse files

Syslog, backup origin, crashed server recovery, and more.

Use syslog.  Keep track of the origin of backups.  Removed
workaround for manhattan.  Detect crashed servers faster.

* backup-one-task: Removed special case for manhattan.  Store the
  origin of a backup in the origin file, and refuse to back up from a
  different origin (but tell the administrator how to proceed).  Use
  ServerAliveInterval to speed up detection of a crashed server.  Log
  a message to syslog when a backup completes.
parent 7433a9bf
No related branches found
No related tags found
No related merge requests found
2006-12-19 Per Cederqvist <ceder@sedesopim.lysator.liu.se> 2006-12-19 Per Cederqvist <ceder@sedesopim.lysator.liu.se>
Use syslog. Keep track of the origin of backups. Removed
workaround for manhattan. Detect crashed servers faster.
* backup-one-task: Removed special case for manhattan. Store the
origin of a backup in the origin file, and refuse to back up from
a different origin (but tell the administrator how to proceed).
Use ServerAliveInterval to speed up detection of a crashed
server. Log a message to syslog when a backup completes.
Added a top-level script that runs backups repeatedly. Added a top-level script that runs backups repeatedly.
* backup-repeatedly: New file. * backup-repeatedly: New file.
......
...@@ -63,6 +63,7 @@ rdifflogfile="$base"/rdiff-backup.out ...@@ -63,6 +63,7 @@ rdifflogfile="$base"/rdiff-backup.out
summaryfile="$base"/backup-summary.txt summaryfile="$base"/backup-summary.txt
lockdir="$base"/lock lockdir="$base"/lock
state="$lysrdiff"/state state="$lysrdiff"/state
origin="$base"/origin
mkdir -p "$files" mkdir -p "$files"
mkdir "$lockdir" || exit 1 mkdir "$lockdir" || exit 1
...@@ -87,11 +88,27 @@ then ...@@ -87,11 +88,27 @@ then
exit 0 exit 0
fi fi
if [ "$server" = manhattan ] if [ ! -f "$origin" ]
then then
echo "$server":"$serverpath" > "$origin"
fi
rm -f "$origin.new"
echo "$server":"$serverpath" > "$origin.new"
if ! diff -u "$origin" "$origin.new"
then
echo Skipping backup due to changed origin. Remove >&2
echo "$origin" >&2
echo to override. >&2
# Leave the origin.new file. Flag this as a failure.
touch "$base"/last-failure
touch "$statebase"-fail
rmdir "$lockdir" rmdir "$lockdir"
exit 0 exit 0
fi fi
rm "$origin.new"
unset SSH_ASKPASS unset SSH_ASKPASS
unset SSH_AUTH_SOCK unset SSH_AUTH_SOCK
...@@ -128,7 +145,8 @@ touch "$statebase"-attempt ...@@ -128,7 +145,8 @@ touch "$statebase"-attempt
echo -ne "${CLR}${msg}: running rdiff-backup$ETA" echo -ne "${CLR}${msg}: running rdiff-backup$ETA"
schema="ssh -o BatchMode=yes -a -k -x -i /root/.ssh/backupkey" schema="ssh -o BatchMode=yes -o ServerAliveInterval=120"
schema="$schema -a -k -x -i /root/.ssh/backupkey"
schema="$schema %s $remoterdiff --server" schema="$schema %s $remoterdiff --server"
rdiff-backup --exclude-other-filesystems --null-separator \ rdiff-backup --exclude-other-filesystems --null-separator \
...@@ -162,6 +180,7 @@ then ...@@ -162,6 +180,7 @@ then
touch "$base"/last-nowarn-backup touch "$base"/last-nowarn-backup
rm -f "$statebase"-neverwarnfree rm -f "$statebase"-neverwarnfree
rm -f "$statebase"-warn rm -f "$statebase"-warn
logger -p local5.info -t LYSrdiff "$lysrdiffpart $category $subcategory: OK"
else else
echo ${msg}: WARNING: output from rdiff-backup: echo ${msg}: WARNING: output from rdiff-backup:
echo echo
...@@ -175,6 +194,7 @@ then ...@@ -175,6 +194,7 @@ then
then then
touch "$statebase"-neverwarnfree touch "$statebase"-neverwarnfree
fi fi
logger -p local5.info -t LYSrdiff "$lysrdiffpart $category $subcategory: OK with warnings"
fi fi
else else
mv "$base"/backup-attempt-start "$base"/last-failure mv "$base"/backup-attempt-start "$base"/last-failure
...@@ -183,6 +203,7 @@ else ...@@ -183,6 +203,7 @@ else
echo echo
sed 's/^/ /' "$rdifflogfile" sed 's/^/ /' "$rdifflogfile"
echo echo
logger -p local5.info -t LYSrdiff "$lysrdiffpart $category $subcategory: FAIL"
fi fi
rmdir "$lockdir" rmdir "$lockdir"
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment