Einführung
In der Welt des Computings sind Daten von unschätzbarem Wert. Datenverlust, sei es durch Hardwarefehler, versehentliches Löschen oder böswillige Angriffe, kann katastrophale Folgen haben. Datenresilienz ist die Praxis, sicherzustellen, dass Ihre Daten geschützt, verfügbar und im Falle eines Ausfalls wiederherstellbar sind.
Dieses Lab führt Sie in zwei grundlegende Konzepte der Datenresilienz unter Linux-Systemen ein: das Erstellen von Backups und die Überprüfung der Dateintegrität. Sie werden Standard-Linux-Befehlszeilenwerkzeuge verwenden, um diese Aufgaben auszuführen.
Sie lernen, wie Sie:
- Den
tar-Befehl verwenden, um ein komprimiertes Archiv (Backup) wichtiger Dateien zu erstellen. - Ein Datenverlustszenario durch Löschen von Dateien simulieren.
- Ihre Daten aus dem Backup-Archiv wiederherstellen.
- Prüfsummen mit
md5sumverwenden, um zu überprüfen, ob Ihre Dateien nicht verändert oder beschädigt wurden.
Am Ende dieses Labs werden Sie praktische, hands-on Erfahrung mit wesentlichen Fähigkeiten für jeden Systemadministrator oder Entwickler gesammelt haben.
Erstellen einer lokalen Sicherung kritischer Dateien mit Tar
In diesem Schritt lernen Sie, wie Sie mit dem Dienstprogramm tar (Tape Archive) ein komprimiertes Backup eines Verzeichnisses erstellen. tar ist ein leistungsfähiges und weit verbreitetes Kommando zum Bündeln von Dateien und Verzeichnissen in einer einzigen Archivdatei, die dann komprimiert werden kann, um Speicherplatz zu sparen. Dies ist eine gängige Methode zur Erstellung lokaler Backups.
Zuerst überprüfen wir die Dateien, die für Sie vom Setup-Skript erstellt wurden. Alle Ihre Arbeiten werden im Verzeichnis ~/project durchgeführt.
Listen Sie den Inhalt des Verzeichnisses ~/project auf:
ls -R ~/project
Sie sollten das Verzeichnis critical_data mit seinen Dateien und ein leeres Verzeichnis backups sehen.
/home/labex/project:
backups critical_data
/home/labex/project/backups:
/home/labex/project/critical_data:
config.txt user_data.csv
Nun erstellen wir ein komprimiertes Backup des Verzeichnisses critical_data und speichern es im Verzeichnis backups. Wir verwenden den tar-Befehl mit den folgenden Optionen:
c: Erstellt ein neues Archiv.z: Komprimiert das Archiv mit gzip. Deshalb hat die Datei die Erweiterung.gz.v: Verbose-Modus. Listet die Dateien auf, während sie verarbeitet werden.f: Gibt den Dateinamen des zu erstellenden Archivs an.-C: Wechselt in das angegebene Verzeichnis, bevor das Archiv erstellt wird. Dies stellt sicher, dass wir relative Pfade anstelle von absoluten Pfaden speichern, was das Backup portabler macht und verschachtelte Verzeichnisstrukturen während der Extraktion vermeidet.
Führen Sie den folgenden Befehl in Ihrem Terminal aus:
tar -czvf ~/project/backups/backup.tar.gz -C ~/project critical_data
Der Befehl gibt die Namen der Dateien aus, die er dem Archiv hinzufügt:
critical_data/
critical_data/config.txt
critical_data/user_data.csv
Sie haben nun erfolgreich ein Backup erstellt. Zur Sicherheit können Sie den Inhalt des Verzeichnisses backups auflisten:
ls ~/project/backups
Sie sollten Ihre neue Backup-Datei sehen:
backup.tar.gz
Datenverlust simulieren und aus Backup wiederherstellen
In diesem Schritt simulieren Sie ein häufiges Katastrophenszenario: versehentliches Löschen von Daten. Anschließend verwenden Sie die im vorherigen Schritt erstellte Backup-Datei, um die verlorenen Daten wiederherzustellen.
Zuerst simulieren wir den Datenverlust, indem wir das Verzeichnis critical_data dauerhaft löschen. Der Befehl rm -rf ist sehr mächtig und sollte mit Vorsicht verwendet werden; er löscht Verzeichnisse und Dateien rekursiv (-r) und zwangsweise (-f), ohne nachzufragen.
Führen Sie den folgenden Befehl aus, um das Verzeichnis zu löschen:
rm -rf ~/project/critical_data
Überprüfen Sie nun, ob das Verzeichnis verschwunden ist, indem Sie den Inhalt Ihres Projektverzeichnisses auflisten:
ls ~/project
Sie werden sehen, dass das Verzeichnis critical_data nicht mehr vorhanden ist:
backups
Keine Sorge! Deshalb haben wir Backups. Nun stellen wir das Verzeichnis aus dem Archiv backup.tar.gz wieder her. Wir verwenden erneut den tar-Befehl, jedoch mit anderen Optionen:
x: Extrahiert Dateien aus einem Archiv.z: Dekomprimiert das Archiv mit gzip.v: Verbose-Modus, um die extrahierten Dateien anzuzeigen.f: Gibt den Dateinamen des zu verwendenden Archivs an.-C: Gibt das Verzeichnis an, in das die Dateien extrahiert werden sollen. Wir extrahieren sie nach~/project.
Führen Sie diesen Befehl aus, um Ihre Daten wiederherzustellen:
tar -xzvf ~/project/backups/backup.tar.gz -C ~/project
Sie sehen die Ausgabe der extrahierten Dateien:
critical_data/
critical_data/config.txt
critical_data/user_data.csv
Beachten Sie, dass tar die ursprüngliche Verzeichnisstruktur beibehalten hat, jedoch ohne die absoluten Pfadpräfixe, da wir bei der Erstellung des Backups die Option -C verwendet haben. Überprüfen wir, ob die Wiederherstellung erfolgreich war. Listen Sie den Inhalt des Verzeichnisses ~/project erneut auf:
ls -R ~/project
Sie sollten sehen, dass das Verzeichnis critical_data und alle seine ursprünglichen Dateien wiederhergestellt wurden.
/home/labex/project:
backups critical_data
/home/labex/project/backups:
backup.tar.gz
/home/labex/project/critical_data:
config.txt user_data.csv
Sie haben erfolgreich einen simulierten Datenverlust behoben.
Überwachung der Dateintegrität mit Checksummen
In diesem Schritt lernen Sie, wie Sie die Integrität von Dateien überwachen. Ein Backup schützt Sie vor Datenverlust, aber es sagt Ihnen nicht, ob eine Datei subtil beschädigt oder bösartig verändert wurde. Eine Checksumme (oder Hash) ist ein eindeutiger digitaler Fingerabdruck einer Datei. Wenn sich auch nur ein Bit in der Datei ändert, ändert sich die Checksumme vollständig. Dies macht sie zu einem ausgezeichneten Werkzeug zur Überprüfung der Dateintegrität.
Wir verwenden den Befehl md5sum, der eine MD5-Checksumme berechnet. Obwohl SHA-256 (sha256sum) kryptografisch sicherer ist, ist md5sum einfach und für diese Demonstration ausreichend.
Zuerst generieren wir Checksummen für unsere kritischen Dateien und speichern sie in einer Referenzdatei.
md5sum ~/project/critical_data/* > ~/project/checksums.md5
Zeigen Sie nun den Inhalt der gerade erstellten Datei checksums.md5 an:
cat ~/project/checksums.md5
Die Ausgabe zeigt für jede Datei eine eindeutige Checksumme. Ihre Checksummenwerte werden mit diesen identisch sein:
d7118547a95c5470575962481c2e358c /home/labex/project/critical_data/config.txt
b643407358b9de495715f13432577d33 /home/labex/project/critical_data/user_data.csv
Nun simulieren wir eine unbefugte Änderung einer der Dateien. Wir fügen einen Kommentar zur Datei config.txt hinzu.
echo "## This is a change" >> ~/project/critical_data/config.txt
Die Datei wurde geändert. Für einen Beobachter, der nur die Dateiliste betrachtet, scheint nichts falsch zu sein. Aber wir können unsere Checksummen-Datei verwenden, um nach Änderungen zu suchen. Die Option -c weist md5sum an, Dateien anhand einer Liste zu überprüfen.
md5sum -c ~/project/checksums.md5
Der Befehl prüft jede in checksums.md5 aufgeführte Datei gegen ihren aktuellen Zustand auf der Festplatte. Die Ausgabe zeigt deutlich, dass config.txt geändert wurde:
/home/labex/project/critical_data/config.txt: FAILED
/home/labex/project/critical_data/user_data.csv: OK
md5sum: WARNING: 1 computed checksum did NOT match
Dieser "FAILED"-Status warnt Sie sofort, dass die Datei nicht mehr in ihrem ursprünglichen, vertrauenswürdigen Zustand ist. Dies ist eine leistungsstarke Technik zur Erkennung von Datenbeschädigung oder Sicherheitsverletzungen.
Zusammenfassung
Herzlichen Glückwunsch zum Abschluss dieses Labs! Sie haben praktische Erfahrungen mit grundlegenden Praktiken zur Datensicherheit in einer Linux-Umgebung gesammelt.
In diesem Lab haben Sie gelernt:
- Backups erstellen: Sie haben den Befehl
tarverwendet, um ein komprimiertes Backup kritischer Dateien zu erstellen, eine Kernkompetenz zur Verhinderung von Datenverlust. - Daten wiederherstellen: Sie haben ein Szenario mit Datenverlust simuliert und Ihre Dateien erfolgreich aus einem
tar-Archiv wiederhergestellt, was einen vollständigen Backup- und Wiederherstellungszyklus demonstriert. - Dateintegrität überprüfen: Sie haben
md5sumverwendet, um Dateichecksummen zu generieren und zu überprüfen, eine leistungsstarke Methode zur Erkennung unbefugter Änderungen oder Datenbeschädigung.
Diese Fähigkeiten sind unerlässlich für die Aufrechterhaltung der Sicherheit und Verfügbarkeit jedes Systems. Regelmäßige Datensicherungen und die Überprüfung ihrer Integrität sind entscheidende Bestandteile einer verantwortungsvollen Systemadministration und einer robusten Anwendungsbereitstellung.



