Wie läßt sich ein einfaches Backup realisieren?
In Verbindung mit dem von 1&1 angebotenen Backup-Space können Sie über ein kleines Shell-Skript und der aktuellen SuSE-Standardinstallation ein einfaches Backup für eine tagesaktuelle Sicherung bestimmter Daten realisieren. Das Beispiel eignet sich nicht für eine komplette Sicherung aller Daten auf dem Server.
Folgende Schritte sind für die Einrichtung nötig:
Legen Sie die Datei '.netrc' als root an und setzen Sie die Rechte so, dass nur root die Datei einsehen und bearbeiten kann:
touch /root/.netrc
chmod 600 /root/.netrc
In /root/.netrc müssen danach folgende Einträge eingefügt werden:
machine backupXX.pureserver.info
login BACKUP-BENUTZERNAME
password BACKUP-PASSWORT
macdef backup
put $1 $2
put $1.md5 $2.md5
quit
Bitte passen Sie backupXX.pureserver.info, BACKUP-BENUTZERNAME und BACKUP-PASSWORT entsprechend an, die Daten finden Sie im >> Control-Center. Desweiteren muß nach der letzten Zeile 'quit' eine zusätzliche Leerzeile folgen.
Das Backup-Archiv wird vor der Sicherung auf dem Server gespeichert, dies sollte auf der /home Partition geschehen:
mkdir /home/backup
chmod 700 /home/backup
Das Backup-Skript selbst wird unter /root/bin/simple-backup.sh gespeichert, gegebenenfalls muß /root/bin noch angelegt werden:
mkdir /root/bin
Script 5: /root/bin/simple-backup.sh
#!/bin/sh
# Name der Backup-Datei
BACKUP_FILE="backup.tar.gz"
# temporaerer Speicherort des Backup-Archivs
BACKUP_TMP="/home/backup/"
# kompletter Pfad zum Backup
BACKUP=${BACKUP_TMP}${BACKUP_FILE}
# Verzeichnisse die gesichert werden sollen
# in diesem Beispiel sind dies die Kunden Webseiten und E-Mails
BACKUP_DATA="/home/htdocs /var/spool/mail"
# Hostname des Backup-Servers
BACKUP_SERVER="backupXX.pureserver.info"
# alte UMASK sichern
UMASK=`umask`
umask 0077
tar --exclude=${BACKUP} -czf ${BACKUP} ${BACKUP_DATA} 2>/dev/null
md5sum ${BACKUP} > ${BACKUP}.md5
echo "\$ backup ${BACKUP} ${BACKUP_FILE}" | pftp ${BACKUP_SERVER} >/dev/null
rm -f ${BACKUP} ${BACKUP}.md5
umask ${UMASK}
In der Zeile BACKUP_SERVER="backupXX.pureserver.info" setzen Sie ebenfalls den Hostnamen des Backup-Servers ein.
Das Skript muss nun noch mit den korrekten Rechten versehen werden:
chmod 700 /root/bin/simple-backup.sh
Für die Automatisierung des Backups können Sie einen Cronjob einrichten. Dazu legen Sie die Datei /etc/cron.d/simple-backup an. Dort tragen Sie den Cronjob für ein tägliches Backup in folgender Form ein:
MINUTE STUNDE * * * root /root/bin/simple-backup.sh
Für MINUTE (0-59) und STUNDE (0-24) setzen Sie die gewünschte Uhrzeit für das Backup ein.