Befehl | Beschreibung | Plattform |
tar | Archiviert Dateien und Verzeichnisse zu einer einzelnen Datei und kann diese auch komprimieren. | Alle Linux-Distributionen |
rsync | Synchronisiert Dateien und Verzeichnisse lokal oder über das Netzwerk, effizient durch Delta-Übertragung. | Alle Linux-Distributionen |
dd | Kopiert und konvertiert Dateien auf Blockebene; häufig für das Erstellen von Festplattenabbildern verwendet. | Alle Linux-Distributionen |
cpio | Kopiert Dateien in oder aus Archiven; wird oft mit find oder ls kombiniert. | Alle Linux-Distributionen |
gzip / gunzip | Komprimiert und dekomprimiert Dateien mit dem gzip-Algorithmus. | Alle Linux-Distributionen |
bzip2 / bunzip2 | Komprimiert und dekomprimiert Dateien mit dem bzip2-Algorithmus (bessere Kompression als gzip). | Alle Linux-Distributionen |
zip / unzip | Komprimiert und dekomprimiert Dateien im ZIP-Format; kompatibel mit Windows-ZIP-Dateien. | Alle Linux-Distributionen |
scp | Sicherer Dateiübertragungsbefehl über SSH; kann für das Kopieren von Backups über das Netzwerk verwendet werden. | Alle Linux-Distributionen |
sftp | Sicheres FTP über SSH; kann für interaktive Dateiübertragungen genutzt werden. | Alle Linux-Distributionen |
mysqldump | Erstellt ein Backup einer MySQL/MariaDB-Datenbank in eine Textdatei mit SQL-Befehlen zum Wiederherstellen. | Benötigt MySQL/MariaDB |
pg_dump | Erstellt ein Backup einer PostgreSQL-Datenbank. | Benötigt PostgreSQL |
lvm | Logical Volume Manager Befehle wie lvcreate, lvsnapshot für Snapshots von logischen Volumes. | Alle Linux-Distributionen mit LVM-Unterstützung |
dump | Erstellt Backups von Dateisystemen auf Blockebene (hauptsächlich für ext2/3/4). | Alle Linux-Distributionen |
restore | Stellt Dateien von Backups wieder her, die mit dump erstellt wurden. | Alle Linux-Distributionen |
cp | Kopiert Dateien und Verzeichnisse; kann für einfache Backups verwendet werden. | Alle Linux-Distributionen |
cp -a | Kopiert Dateien und Verzeichnisse und behält alle Attribute bei; nützlich für Backups. | Alle Linux-Distributionen |
cron / crontab | Planung von wiederkehrenden Aufgaben; kann zum Automatisieren von Backups verwendet werden. | Alle Linux-Distributionen |
rsnapshot | Skriptbasiertes Tool für Backups mit rsync und Hardlinks für inkrementelle Backups. | Installation erforderlich |
rdiff-backup | Führt inkrementelle Backups durch; kombiniert die Vorteile von rsync und Revisionskontrolle. | Installation erforderlich |
borg | Deduplizierendes Backup-Tool mit Verschlüsselungsunterstützung. | Installation erforderlich |
duplicity | Verschlüsselte inkrementelle Backups mit Unterstützung für verschiedene Speicherziele (lokal, FTP, SSH, Cloud-Dienste). | Installation erforderlich |
timeshift | Tool zur Systemsicherung und -wiederherstellung ähnlich wie „Systemwiederherstellung“ unter Windows. | Hauptsächlich Ubuntu/Debian-basierte Systeme |
fsarchiver | Flexibles Tool zum Sichern von Dateisystemen in eine komprimierte Archivdatei. | Installation erforderlich |
partclone | Tool zum Klonen von Partitionen und Dateisystemen; unterstützt viele Dateisystemtypen. | Installation erforderlich |
testdisk | Datenwiederherstellungstool zum Wiederherstellen verlorener Partitionen und Dateien. | Installation erforderlich |
Hinweise:
- Plattform: Die meisten Befehle sind auf allen gängigen Linux-Distributionen verfügbar. Einige spezialisierte Tools müssen eventuell installiert werden.
- Installation von Paketen:
- Ubuntu/Debian: sudo apt-get install paketname
- RHEL/CentOS/Fedora: sudo yum install paketname oder sudo dnf install paketname
Beispiele
- Erstellen eines komprimierten Archivs mit tar:
tar -czvf backup.tar.gz /pfad/zum/verzeichnis
# -c erstellt ein neues Archiv
# -z komprimiert mit gzip
# -v zeigt den Fortschritt an
# -f spezifiziert den Dateinamen des Archivs
- Wiederherstellen eines Archivs mit tar:
tar -xzvf backup.tar.gz -C /ziel/pfad
# -x extrahiert das Archiv
# -C gibt das Zielverzeichnis an
- Synchronisieren von Dateien mit rsync:
rsync -avz /quelle/ user@remote_host:/ziel/
# -a Archivmodus (beinhaltet rekursiv, Berechtigungen, Zeiten)
# -v verbose, zeigt detaillierte Informationen
# -z komprimiert während der Übertragung
- Erstellen eines Festplattenabbilds mit dd:
dd if=/dev/sdX of=/pfad/zum/backup.img bs=4M status=progress
# if=input file (Quellgerät)
# of=output file (Zieldatei)
# bs=Blockgröße
# status=progress zeigt Fortschritt an
- Automatisiertes Backup mit cron:
crontab -e
# Füge folgende Zeile hinzu, um täglich um 2 Uhr ein Backup zu erstellen
0 2 * * * /usr/bin/rsync -a /quelle/ /ziel/
- Datenbanksicherung mit mysqldump:
mysqldump -u benutzername -p datenbankname > datenbank_backup.sql
- Datenbanksicherung mit pg_dump:
pg_dump -U benutzername datenbankname > datenbank_backup.sql
- Verwendung von lvm für Snapshots:
lvcreate –size 1G –snapshot –name snapshot_name /dev/vgname/lvname
- Inkrementelle Backups mit rsnapshot:
- Installation:
sudo apt-get install rsnapshot # Ubuntu/Debian
sudo yum install rsnapshot # RHEL/CentOS
- Installation:
- Konfiguration: Bearbeiten Sie /etc/rsnapshot.conf entsprechend Ihren Anforderungen.
- Ausführen eines Backups:
sudo rsnapshot daily
- Backups mit borg:
- Installation:
sudo apt-get install borgbackup # Ubuntu/Debian
sudo yum install borgbackup # RHEL/CentOS
- Installation:
- Erstellen eines Repositories:
borg init –encryption=repokey /pfad/zu/repository
- Erstellen eines Backups:
borg create /pfad/zu/repository::backup-{now:%Y-%m-%d} /daten/quelle
Zusätzliche Empfehlungen:
- Überprüfung von Backups: Stellen Sie sicher, dass Backups regelmäßig getestet werden, um die Wiederherstellbarkeit zu gewährleisten.
- Sicherheit: Schützen Sie Ihre Backups durch Verschlüsselung, insbesondere wenn sie außerhalb des Standorts oder in der Cloud gespeichert werden.
- Backup-Strategie: Implementieren Sie die 3-2-1-Backup-Regel:
- 3 Kopien Ihrer Daten
- 2 verschiedene Speichermedien
- 1 Kopie off-site (außerhalb des Standorts)
- Dokumentation: Halten Sie eine detaillierte Dokumentation Ihrer Backup- und Wiederherstellungsprozesse bereit.
Wichtige Verzeichnisse für Backups unter Linux:
- /etc: Konfigurationsdateien
- /home: Benutzerdateien und -einstellungen
- /var/www: Webserver-Dateien (wenn ein Webserver verwendet wird)
- Datenbankverzeichnisse (abhängig von der Datenbank)
- Individuelle Anwendungsdaten