1:1 Kopie einer Festplatte ?

Uli Kleemann hackbox at lug-saar.de
Die Jul 1 19:36:38 BST 2008


Hallo Frank,

nachdem mir nun klar ist, was Du möchtest - es liegt im Geltungsbereich - 
Auch wenn ich bestimmt kein public oder common programming mache - dafür sind meine Kenntnisse viel zu gering
hier eine Lösungsmöglichkeit: (stammt nicht von mir.)

--------------------schnipp-------------------------------------------------------------------------------
#!/bin/bash
# Script fuer inkrementelles Backup mit 30 taegigem Vollbackup
### Einstellungen ##
BACKUPDIR="media/backup"                # Pfad zum Backupverzeichnis
ROTATEDIR="media/backup/rotate"     # Pfad wo die Backups nach 30 Tagen konserviert werden
TIMESTAMP="timestamp.dat"                 # Zeitstempel
SOURCE="home/user"                            # Verzeichnis(se) welche(s) gesichert werden soll(en)
DATUM="$(date +%d-%m-%Y)"             # Datumsformat einstellen
ZEIT="$(date +%H:%M)"                          # Zeitformat einstellen
### Verzeichnisse/Dateien welche nicht gesichert werden sollen ! Achtung keinen Zeilenumbruch ! ##
EXCLUDE="--exclude=home/user/Filme --exclude=home/user/Musik --exclude=home/user/Spiele --exclude=home/user/.VirtualBox  --exclude=home/user/.local/share/Trash"
### Wechsel in root damit die Pfade stimmen ##
cd /
### Backupverzeichnis anlegen ##
mkdir -p ${BACKUPDIR}
### Test ob Backupverzeichnis existiert und Mail an Admin bei fehlschlagen ##
if [ ! -d "${BACKUPDIR}" ]; then
mail -s "Backupverzeichnis nicht vorhanden!" root <<EOM
Hallo Admin,
das Backup am ${DATUM} konnte nicht erstellt werden. Das Verzeichnis ${BACKUPDIR} wurde nicht gefunden und konnte auch nicht angelegt werden.
Mit freundlichem Gruss Backupscript
EOM
 . exit 1
fi
### Alle Variablen einlesen und letzte Backupdateinummer herausfinden ##
set -- ${BACKUPDIR}/backup-???.tgz
lastname=${!#}
backupnr=${lastname##*backup-}
backupnr=${backupnr%%.*}
backupnr=${backupnr//\?/0}
backupnr=$[10#${backupnr}]
### Backupdateinummer automatisch um +1 bis maximal 30 erhoehen ##
if [ "$[backupnr++]" -ge 30 ]; then
mkdir -p ${ROTATEDIR}/${DATUM}-${ZEIT}
### Test ob Rotateverzeichnis existiert und Mail an Admin bei fehlschlagen ##
if [ ! -d "${ROTATEDIR}/${DATUM}-${ZEIT}" ]; then
mail -s "Rotateverzeichnis nicht vorhanden!" root <<EOM
Hallo Admin,
die alten Backups konnten am ${DATUM} nicht verschoben werden. Das Verzeichnis ${ROTATEDIR} wurde nicht gefunden und konnte auch nicht angelegt werden.
Mit freundlichem Gruss Backupscript
EOM
 . exit 1
else
mv ${BACKUPDIR}/* ${ROTATEDIR}/${DATUM}-${ZEIT} 
fi
### Abfragen ob das Backupverschieben erfolgreich war ##
if [ $? -ne 0 ]; then
mail -s "Backupverschieben fehlerhaft!" root <<EOM
Hallo Admin,
die alten Backups konnte am ${DATUM} nicht verschoben werden.
Mit freundlichem Gruss Backupscript
EOM
exit 1
else
mail -s "Backupverschieben erfolgreich" root <<EOM
Hallo Admin,
die alten Backups wurde am ${DATUM} erfolgreich nach ${ROTATEDIR}/${DATUM}-${ZEIT} verschoben.
Mit freundlichem Gruss Backupscript
EOM
### die Backupnummer wieder auf 1 stellen ##
backupnr=1 
fi 
fi
backupnr=000${backupnr}
backupnr=${backupnr: -3}
filename=backup-${backupnr}.tgz
### Nun wird das eigentliche Backup ausgefuehrt ##
tar -czf ${BACKUPDIR}/${filename} -g ${BACKUPDIR}/${TIMESTAMP} ${SOURCE} ${EXCLUDE}
### Abfragen ob das Backup erfolgreich war ##
if [ $? -ne 0 ]; then
mail -s "Backup (${SOURCE}) war fehlerhaft!" root <<EOM
Hallo Admin,
das Backup ${filename} am ${DATUM} wurde mit Fehler(n) beendet.
Mit freundlichem Gruss Backupscript
EOM
else
mail -s "Backup (${SOURCE}) war erfolgreich" root <<EOM
Hallo Admin,
das Backup ${filename} am ${DATUM} wurde erfolgreich beendet.
Mit freundlichem Gruss Backupscript
EOM
fi
----------------------------------------schnapp-----------------------------------------------------------

Mehr Information dazu findest Du hier: 
http://forum.kubuntu-de.org/index.php?topic=10444.0

Public Viewing machen wir bestimmt nicht, weil dieser Ausdruck sehr frei übersetzt eine "Leichenbeschau" genauer die gemeinsame
Abschiedname eines aufgebahrten Verstorbenen in der Nachbarschaft bedeutet.

My English makes me so quickly nobody after.
-- 
Uli Kleemann <hackbox at lug-saar.de>
Note: No Microsoft programs were used in the creation or distribution of this message. If you are using a Microsoft program to view this message, be forewarned that I am not responsible for any harm you may encounter as a result.