Re: [Debian] Sinnvolles Backup
On Sat, Jan 12, 2002 at 04:31:50PM +0100, Michael Pahle wrote:
> Am Samstag, 12. Januar 2002 16:02 schrieb Jens Benecke:
> > Erzähl mal wofür du dich entscheidest und wie es dann funktioniert.
>
> Erstmal vielen Dank! Auch an Johannes Formann und Hans-Jürgen Mehnert.
> Ich werde mir sowohl alle Lösungsvorschläge erst mal anschauen und mich
> dann entscheiden, wie ich den Datenmüll sichere :-) Mit software-raid und
> diesem rsync kenne ich mich nicht aus. Da muß ich erst mal nachlesen.
Ich hänge mal mein rsync-Skript an (muss natürlich angepasst werden, ist
aber ziemlich trivial).
rsync synchronisiert zwei Verzeichnisbäume unter bestimmten Kriterien,
wobei nur die Unterschiede wirklich durch die Leitung gehen. Ist also
besonders für Spiegelungen über langsame Verbindungen gedacht, aber auch
zum Spiegeln von lokalen Verzeichnissen geeignet.
Mein Skript:
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
#!/bin/bash
#
# Rsync from dev/hda to dev/hdb. Partitioning stuff is the same.
#
set -e
BASE=/_rescue
EXCL=/rsync.exclude
test -r $EXCL || exit 1
# Shutdown all that might write critical things (see etc/runlevel.conf)
echo "Going into runlevel 4 ..."
init 4
# Sicher ist sicher (mysql macht manchmal zicken)
killall mysqld || true
killall safe_mysqld || true
sleep 1
killall -9 mysqld || true
killall -9 safe_mysqld || true
sleep 1
echo "system maintenance - please check back later" > /etc/nologin
# Sicherheitshalber...
umount $BASE/var >/dev/null || true
umount $BASE/home >/dev/null || true
umount $BASE >/dev/null || true
echo "Checking backup file systems ..."
e2fsck -y /dev/hdb1 >/dev/null # rescue-/
e2fsck -y /dev/hdb5 >/dev/null # rescue-/var
e2fsck -y /dev/hdb6 >/dev/null # rescue-/home
e2fsck -y /dev/hdb7 >/dev/null # rescue-/tmp
echo "Mounting file sytems ..."
mount /dev/hdb1 $BASE
mount /dev/hdb5 $BASE/var
mount /dev/hdb6 $BASE/home
#mount /dev/hdb7 $BASE/tmp # braucht nicht gesyncht zu werden ;)
echo
echo "Starting SYNC process ..."
rsync $1 -av --exclude-from=$EXCL --delete / /_rescue
echo "Unmounting backup file systems ..."
umount /dev/hdb6
umount /dev/hdb5
umount /dev/hdb1
# Restart all necessary services
echo -n "Going back into runlevel 2 ..."
init 2
rm -f /etc/nologin
echo " done."
---------------------------------------------------------------------------
Die Exclude-Datei (rsync.exclude)
---------------------------------------------------------------------------
/_rescue/*
/boot
/boot/*
/cdrom/*
/dev/*
/floppy/*
/initrd/*
/lost+found/*
/mnt/*
/proc/*
/tmp/*
*aquota*
/var/run/*
/var/state/logcheck/*
---------------------------------------------------------------------------
Einfacher gehts "natürlich" mit einem richtigen RAID-Setup (da steckst du
einfach eine frische, leere Platte nach, wenn eine kaputt gegangen ist -
das Synchronisieren erledigt das RAID-System, während das System normal
weiterläuft), aber das kann sich nicht jeder leisten (und will oft auch gar
nicht).
--
mfg, Jens Benecke
http://www.jensbenecke.de/ - Persönliches
http://www.hitchhikers.de/ - Europas Mitfahrzentrale (car sharing agency)
Politics is like a septic tank - all the big shits float to the top.
Reply to: