Linux-Server vollständig sichern mit SystemRescue und tar
Ein vollständiges Bare-Metal-Backup eines Linux-Servers schützt vor dem totalen Datenverlust – ob durch Hardwareausfall, Ransomware oder menschliche Fehler. Mit der SystemRescue-CD und dem klassischen tar-Werkzeug lässt sich ein komplettes System-Image erstellen, ohne dass teure Backup-Software notwendig wäre.
Vorbereitungen: SystemRescue-CD booten
Für ein konsistentes Backup muss das zu sichernde System offline sein – es darf nicht während des Backups laufen. Dazu bootet man von der SystemRescue-CD (früher SystemRescueCd), einer auf Arch Linux basierenden Live-Distribution für Systemrettung und -wartung.
Partitionen ermitteln und einbinden
Nach dem Booten zunächst die vorhandenen Partitionen ermitteln und das zu sichernde System einbinden:
# Partitionsübersicht anzeigen
fdisk -l
# Zielpartition einbinden (Beispiel: /dev/sda1)
mkdir /mnt/sda1
mount /dev/sda1 /mnt/sda1/
# Backup-Ziel einbinden (z.B. externe Festplatte oder NAS)
mkdir /mnt/backup
mount /dev/sdb1 /mnt/backup/
# Oder NAS über NFS:
mount -t nfs 192.168.1.100:/backups /mnt/backup/
Vollständiges Backup mit tar erstellen
Das Backup wird mit tar erstellt. Wichtig: Pseudo-Dateisysteme wie /proc, /sys, /dev und /tmp werden ausgeschlossen, da sie keine persistenten Daten enthalten:
tar -cvpzf /mnt/backup/fullbackup_$(date +%Y%m%d).tar.gz --directory=/mnt/sda1 --exclude=./proc --exclude=./sys --exclude=./dev --exclude=./tmp --exclude=./mnt --exclude=./run --exclude=./media .
Die Optionen: -c erstellt ein Archiv, -v zeigt Fortschritt, -p erhält Berechtigungen, -z komprimiert mit gzip, -f gibt die Ausgabedatei an.
Fortschritt beim Backup anzeigen
Bei großen Partitionen möchte man den Fortschritt im Blick behalten. Mit pv (Pipe Viewer) geht das elegant:
# pv installieren (falls nicht vorhanden)
pacman -S pv # auf SystemRescue (Arch-basiert)
# Backup mit Fortschrittsanzeige
tar -cpf - --directory=/mnt/sda1 --exclude=./proc --exclude=./sys --exclude=./dev . | pv -s $(du -sb /mnt/sda1 | awk '{print $1}') | gzip > /mnt/backup/fullbackup_$(date +%Y%m%d).tar.gz
Backup wiederherstellen
Um das Backup auf einem neuen System oder einer neuen Partition wiederherzustellen:
# Zielpartition formatieren und einbinden
mkfs.ext4 /dev/sda1
mount /dev/sda1 /mnt/restore/
# Backup einspielen
tar -xvpzf /mnt/backup/fullbackup_20240101.tar.gz --directory=/mnt/restore/
# Pseudo-Dateisysteme erstellen
mkdir /mnt/restore/{proc,sys,dev,tmp,mnt,run}
# Bootloader neu installieren (GRUB)
mount --bind /dev /mnt/restore/dev
chroot /mnt/restore grub-install /dev/sda
chroot /mnt/restore update-grub
Alternative: rsync für inkrementelle Backups
Für regelmäßige Backups eines laufenden Systems eignet sich rsync besser – besonders in Kombination mit SSH. Details dazu im Beitrag Dateien kopieren über SSH und rsync. Wer Backups über gemountete Netzlaufwerke erstellen möchte, findet unter SSHFS Server Shares eine elegante Lösung.
Weitere Anleitungen zur Linux-Serverwartung gibt es in der Kategorie Linux & Server.


