Einführung
In diesem Lab lernen Sie den grundlegenden Prozess zum Erstellen und Wiederherstellen einer Dateisystemsicherung in einer Linux-Umgebung kennen. Dabei verwenden wir das Kommandozeilen-Werkzeug tar (Tape Archive). Das Hauptziel besteht darin, praktische Erfahrungen mit essenziellen Aufgaben der Systemadministration zu sammeln, einschließlich der Verwaltung von Benutzerberechtigungen und dem Umgang mit Dateiarchiven. Sie werden den Befehl sudo nutzen, um Operationen mit erweiterten Rechten auszuführen, wenn dies für den Zugriff auf systemkritische Verzeichnisse – speziell das Verzeichnis /home mit den Benutzerdaten – erforderlich ist.
Das Lab führt Sie durch einen praxisnahen Workflow unter Verwendung des Standard-Benutzers labex und sudo für administrative Aufgaben. Sie werden ein komprimiertes Archiv des gesamten /home-Verzeichnisses erstellen und dessen erfolgreiche Erstellung überprüfen. Um ein Wiederherstellungsszenario zu simulieren, wechseln Sie in ein temporäres Verzeichnis, /tmp, und extrahieren dort den Inhalt Ihres Backup-Archivs. Abschließend verifizieren Sie, dass die Dateien und die Verzeichnisstruktur korrekt am neuen Ort wiederhergestellt wurden, um die Integrität Ihres Sicherungs- und Wiederherstellungsprozesses zu bestätigen.
Die aktuelle Umgebung verstehen
In diesem Schritt machen Sie sich mit Ihrer aktuellen Arbeitsumgebung vertraut und lernen, wie Sie sudo für administrative Aufgaben einsetzen. Der Benutzer labex ist berechtigt, Befehle mit erweiterten Privilegien über sudo (superuser do) auszuführen. Dies ermöglicht es Ihnen, administrative Tätigkeiten zu erledigen, ohne komplett zum root-Benutzerkonto wechseln zu müssen.
Die Verwendung von sudo entspricht den Sicherheits-Best-Practices, da es nur temporär erhöhte Rechte für spezifische Befehle gewährt, während Ihr Benutzerkontext erhalten bleibt. Dieser Ansatz ist sicherer als die dauerhafte Anmeldung als root, da das Risiko minimiert wird, versehentlich gefährliche Systembefehle auszuführen.
Überprüfen wir zunächst Ihre aktuelle Identität und Ihren Standort mit den Befehlen whoami und pwd (print working directory).
Prüfen Sie, wer Sie sind:
whoami
Die Ausgabe sollte labex lauten:
labex
Überprüfen Sie als Nächstes Ihr aktuelles Verzeichnis:
pwd
Die Ausgabe sollte zeigen, dass Sie sich im Projektverzeichnis des Benutzers labex befinden:
/home/labex/project
Sie können Ihre sudo-Berechtigungen testen, indem Sie einen einfachen Befehl ausführen, der administrativen Zugriff erfordert. Wir schauen uns das Verzeichnis /root an, für das normalerweise erhöhte Rechte nötig sind:
sudo ls /root
Dieser Befehl wird erfolgreich ausgeführt und demonstriert, dass Sie über die notwendigen sudo-Rechte verfügen. Der Befehl sudo gewährt Ihnen temporär die Berechtigungen, die für den Zugriff auf geschützte Bereiche des Dateisystems erforderlich sind.
Nachdem Sie nun Ihre Umgebung und die Möglichkeiten von sudo kennen, sind Sie bereit, im nächsten Schritt ein Backup zu erstellen.
Ein Backup-Archiv des /home-Verzeichnisses erstellen
In diesem Schritt erstellen Sie mit dem Befehl tar und unter Verwendung von sudo eine Sicherung des Verzeichnisses /home. Das Werkzeug tar (Tape Archiver) ist ein Standard-Tool unter Linux zum Erstellen, Anzeigen und Extrahieren von Archivdateien. Ein Archiv ist eine einzelne Datei, die mehrere andere Dateien und Verzeichnisse enthält, was deren Speicherung und Transport vereinfacht.
Sie sind derzeit als Benutzer labex angemeldet und Ihr aktuelles Arbeitsverzeichnis ist /home/labex/project. Sie werden die Backup-Datei in Ihrem persönlichen Home-Verzeichnis erstellen, auf das Ihr Benutzerkonto vollen Zugriff hat.
Der Befehl, den Sie verwenden werden, lautet sudo tar -cvf ~/backup.tar /home. Hier ist die Aufschlüsselung der Optionen:
sudo: Gewährt die erforderlichen Rechte, um alle Dateien im Verzeichnis/homezu lesen, auch solche, die anderen Benutzern gehören.-c(create): Diese Option weisttaran, ein neues Archiv zu erstellen.-v(verbose): Damit listettarjede Datei auf, während sie dem Archiv hinzugefügt wird. Dies ist hilfreich, um den Fortschritt zu verfolgen.-f(file): Diese Option erlaubt es Ihnen, den Dateinamen des Archivs anzugeben. Der Name muss unmittelbar auf diese Option folgen. In unserem Fall ist es~/backup.tar. Das Zeichen~ist eine Abkürzung für Ihr Home-Verzeichnis (/home/labex)./home: Dies ist das Quellverzeichnis, das Sie sichern möchten.
Führen Sie nun den Befehl im Terminal aus, um das Backup-Archiv zu erstellen:
sudo tar -cvf ~/backup.tar /home
Da Sie die Option -v verwendet haben, sehen Sie eine lange Liste von Dateien über den Bildschirm laufen, während diese dem Archiv backup.tar hinzugefügt werden. Die Ausgabe sieht in etwa so aus:
tar: Removing leading `/' from member names
/home/
/home/labex/
/home/labex/.bashrc
/home/labex/.profile
/home/labex/.zshrc
/home/labex/project/
/home/labex/.zsh_history
...
Die Meldung tar: Removing leading '/' from member names ist völlig normal. Sie bedeutet, dass tar die Pfade innerhalb des Archivs relativ speichert, was die Portabilität erhöht und ein Standardverfahren ist.
Im nächsten Schritt werden Sie überprüfen, ob die Datei backup.tar erfolgreich erstellt wurde.
Die Erstellung der Datei backup.tar verifizieren
In diesem Schritt überprüfen Sie, ob das Archiv backup.tar im vorherigen Schritt erfolgreich erstellt wurde. Nach einer kritischen Operation wie einem Backup ist es immer ratsam sicherzustellen, dass die erwartete Ausgabedatei tatsächlich existiert.
Da Sie die Backup-Datei in Ihrem Home-Verzeichnis (~/backup.tar) erstellt haben, müssen Sie dort nachsehen. Der einfachste Weg ist die Verwendung des Befehls ls (list) mit dem vollständigen Pfad oder durch Navigieren in Ihr Home-Verzeichnis.
Führen Sie den Befehl ls aus, um Ihr Home-Verzeichnis zu prüfen:
ls ~
Der Befehl listet alle Dateien und Verzeichnisse in Ihrem Home-Verzeichnis auf. Sie sollten die Datei backup.tar in der Liste sehen:
backup.tar
Alternativ können Sie die Datei direkt über ihren vollständigen Pfad prüfen:
ls -l ~/backup.tar
Die Ausgabe wird in etwa so aussehen:
-rw-r--r-- 1 root root 10240 <Datum> <Zeit> /home/labex/backup.tar
Diese detaillierte Auflistung gibt Ihnen mehr Sicherheit: Sie zeigt, dass die Datei existiert und eine Größe größer als Null hat. Beachten Sie, dass die Datei dem Benutzer root gehört, da Sie sie mit sudo erstellt haben, sie aber dennoch in Ihrem zugänglichen Home-Verzeichnis liegt.
Nachdem Sie das Backup erfolgreich erstellt und verifiziert haben, besteht der nächste Schritt darin, ein Wiederherstellungsszenario zu simulieren.
In das Verzeichnis /tmp für die Wiederherstellung wechseln
In diesem Schritt wechseln Sie Ihr aktuelles Verzeichnis nach /tmp. Um die Wiederherstellung eines Backups zu üben, ist es am besten, die Dateien zunächst an einen neutralen Ort zu extrahieren. Dies verhindert das versehentliche Überschreiben existierender Dateien und ermöglicht es Ihnen, die wiederhergestellten Daten zu inspizieren, bevor Sie sie an ihren endgültigen Bestimmungsort verschieben. Das Verzeichnis /tmp ist unter Linux der Standardort für temporäre Dateien und eignet sich perfekt für diesen Zweck.
Um zwischen Verzeichnissen im Linux-Dateisystem zu navigieren, verwenden Sie den Befehl cd (change directory).
Um in das Verzeichnis /tmp zu wechseln, führen Sie folgenden Befehl aus:
cd /tmp
Nach der Ausführung des Befehls sieht Ihr Terminal-Prompt vielleicht nicht anders aus, aber Ihr Standort im Dateisystem hat sich geändert. Sie können Ihren neuen Standort mit dem Befehl pwd (print working directory) bestätigen, der den vollständigen Pfad Ihres aktuellen Verzeichnisses anzeigt.
pwd
Die Ausgabe sollte bestätigen, dass Sie sich jetzt in /tmp befinden:
/tmp
Da Sie sich nun im Verzeichnis /tmp befinden, sind Sie bereit, den Inhalt des zuvor erstellten Archivs backup.tar zu extrahieren.
Das Backup-Archiv in das aktuelle Verzeichnis extrahieren
In diesem Schritt extrahieren Sie den Inhalt der Datei backup.tar in Ihr aktuelles Verzeichnis /tmp. Dieser Vorgang wird oft als "Wiederherstellung" (Restoring) aus einem Backup bezeichnet. Sie verwenden erneut den Befehl tar, jedoch mit anderen Optionen für die Extraktion.
Sie befinden sich aktuell im Verzeichnis /tmp. Die Backup-Datei backup.tar liegt in Ihrem Home-Verzeichnis (/home/labex). Daher müssen Sie beim Ausführen des Befehls den vollständigen Pfad zur Archivdatei angeben.
Der Befehl zum Extrahieren des Archivs lautet tar -xvf ~/backup.tar. Schauen wir uns die Optionen an:
-x(extract): Diese Option weisttaran, Dateien aus einem Archiv zu extrahieren. Dies ist der entscheidende Unterschied zum Erstellungsbefehl.-v(verbose): Wie zuvor listet dies jede Datei beim Extrahieren auf, um den Fortschritt anzuzeigen.-f(file): Gibt den Namen der zu verarbeitenden Archivdatei an. Mit~/backup.tarreferenzieren Sie die Datei in Ihrem Home-Verzeichnis.
Beachten Sie, dass Sie für die Extraktion kein sudo benötigen, da Sie nach /tmp extrahieren (wo normale Benutzer Schreibrechte haben) und die Backup-Datei nur lesen, aber keine Systemdateien modifizieren.
Führen Sie nun den Befehl im Terminal aus, um die Dateien zu extrahieren:
tar -xvf ~/backup.tar
Sie sehen eine Liste von Dateien und Verzeichnissen, die in Ihrem aktuellen Verzeichnis (/tmp) erstellt werden. Die Ausgabe entspricht der Liste der im Archiv enthaltenen Dateien:
home/
home/labex/
home/labex/.bashrc
home/labex/.profile
home/labex/.zshrc
home/labex/project/
home/labex/.zsh_history
...
Diese Ausgabe zeigt an, dass tar ein Verzeichnis namens home innerhalb von /tmp erstellt und alle gesicherten Daten darin wiederhergestellt hat. Im letzten Schritt werden wir dies überprüfen.
Die wiederhergestellten Dateien in /tmp verifizieren
In diesem letzten Schritt bestätigen Sie, dass die Dateien aus dem Backup-Archiv korrekt in das Verzeichnis /tmp extrahiert wurden. Dies ist ein entscheidender Teil jedes Wiederherstellungsprozesses, um die Datenintegrität sicherzustellen.
Sie befinden sich derzeit im Verzeichnis /tmp. Um das neu erstellte Verzeichnis home zu sehen, verwenden Sie den Befehl ls:
ls
Sie sollten ein Verzeichnis namens home neben anderen eventuell vorhandenen temporären Dateien sehen:
home
...
Dies bestätigt, dass das oberste Verzeichnis aus dem Archiv erstellt wurde. Um gründlicher zu sein, schauen wir in dieses neue home-Verzeichnis hinein, um zu sehen, ob es die erwarteten Benutzerdaten enthält.
ls home
Die Ausgabe sollte das Home-Verzeichnis des Benutzers labex zeigen, welches der Inhalt des ursprünglichen /home-Verzeichnisses war, das Sie gesichert haben:
labex
Dies bestätigt, dass der Sicherungs- und Wiederherstellungsprozess erfolgreich war. Sie haben ein Backup von /home mit sudo-Rechten erstellt, es in Ihrem Home-Verzeichnis (/home/labex) gespeichert und es anschließend erfolgreich an einem temporären Ort unter /tmp/home wiederhergestellt.
Sie können stichprobenartig prüfen, ob die wiederhergestellten Dateien dem Original entsprechen, zum Beispiel die Datei .bashrc:
ls home/labex/.bashrc
Die Ausgabe sollte die Existenz der Datei bestätigen:
home/labex/.bashrc
Der Prozess ist nun abgeschlossen. Sie haben erfolgreich demonstriert, wie man tar mit sudo-Privilegien nutzt, um eine Systemsicherung durchzuführen und dabei den Benutzerkontext beizubehalten – der empfohlene Weg für administrative Aufgaben.
Zusammenfassung
In diesem Lab haben Sie gelernt, wie Sie eine grundlegende Aufgabe der Systemadministration ausführen: das Erstellen und Wiederherstellen einer Verzeichnissicherung mit dem Befehl tar unter Linux und der Verwendung von sudo. Der Prozess begann mit dem Verständnis Ihrer Umgebung als Benutzer labex und dem Einsatz von sudo, um Befehle bei Bedarf mit erweiterten Rechten auszuführen. Dieser Ansatz ist sicherer als der Wechsel zum root-Benutzer, da er gezielt Rechte für spezifische Aufgaben gewährt.
Sie haben das Werkzeug tar mit sudo verwendet, um eine einzelne Archivdatei backup.tar zu erstellen, die den gesamten Inhalt des Verzeichnisses /home umfasst.
Für den Wiederherstellungsteil des Labs haben Sie die Best Practice kennengelernt, zuerst in einen sicheren, temporären Ort wie das Verzeichnis /tmp zu wechseln, um das Überschreiben von Live-Daten zu vermeiden. Von dort aus haben Sie den Befehl tar genutzt, um den Inhalt aus dem Archiv zu extrahieren. Der abschließende Schritt bestand darin, die Integrität der wiederhergestellten Daten in /tmp zu verifizieren, womit der gesamte Sicherungs- und Wiederherstellungszyklus erfolgreich abgeschlossen wurde.



