dump ist ein etwas älteres, aber sehr nützliches Unix-Tool zum Backupen (Anfertigen von Sicherheitskopien, schlagt mich wegen dem Anglizismus) von ext2 und ext3-Dateisystemen. Ich verwende es für das Backupen meiner Home-Partition, was nützlich ist, wenn man sie nachher mal komplett wiederherstellen will (Gründe: Festplattencrash, gestohlener Laptop etc.).
Für Leute, die nicht die gesamte Manpage lesen wollen, um zu verstehen, wie man dump aufruft, hier eine kurze Erklärung:
dump -3u -h 0 -f - /home | gzip > /pfad/zum/backup/verzeichnis/backupfile.dump.gz
Die erste Zahl, hier 3, ist der dump level, welcher für inkrementelle Backups benutzt wird - die Zahl wird jedes Mal erhöht, um nur inkrementelle Backups zu erstellen (welche ich täglich mache); das angehängte -u heißt "aktualisiere die Liste der Backups". Die -h 0 Option sagt dump, dass der nodump flag berücksichtigt werden soll; das heißt, dass Dateien, die mit dem
Das -f - sagt dump, wo die Ausgabedatei zu speichern ist, was hier mit - als die Standardausgabe angegeben ist. Der letzte Parameter ist das Dateisystem (Device-Datei oder Mountpoint), welches gesichert werden soll.
Ich lasse dump auf die Standardausgabe ausgeben, welche ich dann in gzip pipe, um die Dateien etwas zu komprimieren. Ich verwende einen NFS Mountpoint für die Zieldatei, was im Endeffekt heißt, dass die Datei auf meinem Server abgespeichert wird. Man könnte natürlich auch einen Dateinamen nach -f angeben und sich die ganze Piperei zu gzip sparen.
Dies ist ein Attribut der ext2/3-Dateisysteme, welches von dump benutzt wird (wenn man es explizit angibt), um zu bestimmen, ob eine Datei oder ein Ordner überhaupt gebackupt werden muss. Ich benutze dieses Flag für Dateien und Ordner, welche ich nicht unbedingt dringend brauche, aber die viel Speicherplatz brauchen, wie z.B. Videos oder Ordner mit Bildern. Das Attribut setzt man mit:
chattr +d <Datei oder Verzeichnis>
Man kann das Attribut auch mit dem gleichen Befehl wieder löschen, wenn man -d benutzt. Man kann sich auch die ext2/3 Attribute ansehen mit:
lsattr
Die Syntax des lsattr-Befehls erinnert an die Syntax des allseits bekannten ls-Befehls.
Man sollte immer wieder mal ein volles Backup machen, damit man nicht ALLE Backup-Dateien braucht, um eine Partition vollständig wiederherzustellen. Man muss auch ein volles Backup machen, bevor man inkrementell backupen kann. Man kann ein volles Backup mit der Option -0u (oder dem Argument full beim Skript) machen.
Hier präsentiere ich ein kleines Shellskript, welches ich für tägliches, inkrementelles Sichern verwende. Die Grundidee ist, die Backup-Nummer hochzuzählen und den Backup-Dateinamen ein Datum anzuhängen. Verwendung des Skripts auf eigenes Risiko:
#!/bin/bash
#
LAST_BACKUP="/etc/last_backup"
BACKUP_PATH="/mnt/public/David/_bak/laptop"
BACKUP_MOUNTPOINT="/home"
sudo smbmount //LINUX/PUBLIC /mnt/public
sudo umount "$BACKUP_MOUNTPOINT"
if [ "$1" = "full" ]; then
if sudo dump -0 -u -h 0 -f - /home | gzip > "$BACKUP_PATH/home-full-`date +%Y-%m-%d`.dump.gz"; then
echo 0 | sudo tee "$LAST_BACKUP" > /dev/null
exit 0
fi
exit 1
fi
lb=`cat "$LAST_BACKUP"`
nb=`expr $lb + 1`
if sudo dump -$nb -u -h 0 -f - /home | gzip > "$BACKUP_PATH/home-`date +%Y-%m-%d`.dump.gz"; then
echo $nb | sudo tee "$LAST_BACKUP" > /dev/null
fi
sudo mount "$BACKUP_MOUNTPOINT"
Zuletzt geändert: 07. September 2009
Claudio, 04. August 2010:
Cool to hear about that ancient tool for backups.
My former setup has been Unison for essential stuff (between two machines) and kdiff3 for the large and less important stuff. That was fun.
Still dumping? ;-)
David Madl, 04. August 2010:
Cool to hear about "new" approaches :-)
When I first wanted to simplify backups, I was just looking for some simple solution - the Unix-philosophy-compliant dump tool was the perfect match.
I'm starting to abandon dump as almost all of my work is now stored within some kind of revision control system (git is my favourite) and they synchronize well with other machines.
Die Felder E-Mail und Website sind optional. Die E-Mail-Adresse wird nicht angezeigt, sondern dient mir nur als Antwortmöglichkeit.
© 2009 by David Madl. Impressum | Home (English) | Home (Deutsch) | Processing time: 1.306 s
Mark M., 05. Februar 2010:
This is valuable and well written. Thank you.