Einführung
Linux ist ein Mehrbenutzer-Betriebssystem, in dem mehrere Benutzer gleichzeitig arbeiten können. Das Verständnis, wie man zwischen verschiedenen Benutzerkonten wechselt, ist eine grundlegende Fähigkeit für Systemadministratoren und Linux-Benutzer. In diesem Lab werden Sie mit dem Benutzerwechsel in Linux mithilfe des Befehls su (substitute user, dt. Benutzer ersetzen) vertraut gemacht.
In diesem Lab lernen Sie, wie Sie einen neuen Benutzer erstellen, zwischen Benutzern wechseln, Operationen als verschiedene Benutzer ausführen und zu Ihrem ursprünglichen Benutzerkonto zurückkehren. Diese Fähigkeiten sind für Systemadministrationstasks, Sicherheitsverfahren und das Verständnis von Benutzerberechtigungen in Linux-Umgebungen unerlässlich.
Grundlagen zu Linux-Benutzern und Erstellen eines neuen Benutzers
In Linux hat jeder Benutzer sein eigenes Konto mit bestimmten Rechten und einem eigenen Heimatverzeichnis (home directory). Bevor wir zwischen Benutzern wechseln können, müssen wir ein zweites Benutzerkonto erstellen.
Erstellung eines neuen Benutzers
Erstellen wir einen neuen Benutzer namens apprentice mithilfe des Befehls adduser. Dieser Befehl erfordert administrative Rechte, daher verwenden wir sudo, um ihn mit erhöhten Rechten auszuführen:
sudo adduser apprentice
Wenn Sie diesen Befehl ausführen, werden Sie aufgefordert, ein Passwort für den neuen Benutzer festzulegen und einige optionale Informationen anzugeben. In diesem Lab legen wir das Passwort auf password123 fest. Sie können die optionalen Informationsfelder überspringen, indem Sie die Eingabetaste drücken:
Adding user `apprentice' ...
Adding new group `apprentice' (1001) ...
Adding new user `apprentice' (1001) with group `apprentice' ...
Creating home directory `/home/apprentice' ...
Copying files from `/etc/skel' ...
New password: password123
Retype new password: password123
passwd: password updated successfully
Changing the user information for apprentice
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [Y/n] Y
Gewährung von Sudo-Rechten
Geben wir nun dem Benutzer apprentice Sudo-Rechte, damit er administrative Aufgaben ausführen kann:
sudo usermod -aG sudo apprentice
Dieser Befehl fügt den Benutzer apprentice zur Gruppe sudo hinzu. Es wird keine Ausgabe angezeigt, wenn der Befehl erfolgreich ausgeführt wird.
Prüfung der Benutzererstellung
Um zu überprüfen, ob unser neuer Benutzer erfolgreich erstellt wurde, können wir den Inhalt des /home-Verzeichnisses auflisten:
ls -l /home
Sie sollten ein Verzeichnis für den Benutzer apprentice sehen:
total 8
drwxr-xr-x 5 apprentice apprentice 4096 Oct 15 12:34 apprentice
drwxr-xr-x 5 labex labex 4096 Oct 15 12:00 labex
Wir können auch die Liste der Benutzer im System überprüfen, indem wir die Datei /etc/passwd anzeigen:
grep apprentice /etc/passwd
Dies sollte Ihnen Informationen über den Benutzer apprentice anzeigen:
apprentice:x:1001:1001:,,,:/home/apprentice:/bin/bash
Benutzerwechsel mit dem su-Befehl
Nachdem wir den Benutzer apprentice erstellt haben, lernen wir nun, wie man mit dem su-Befehl zu diesem Benutzer wechselt.
Verständnis des su-Befehls
Der su (substitute user, dt. Benutzer ersetzen)-Befehl ermöglicht es Ihnen, während einer Anmeldesitzung zu einem anderen Benutzerkonto zu wechseln. Es gibt zwei gängige Möglichkeiten, den su-Befehl zu verwenden:
su username- Wechselt zum angegebenen Benutzer, behält aber die aktuellen Umgebungsvariablen bei.su - username- Wechselt zum angegebenen Benutzer und lädt auch die Umgebungsvariablen dieses Benutzers.
Die zweite Option mit dem Bindestrich (-) wird im Allgemeinen bevorzugt, da sie einen vollständigen Umgebungswechsel ermöglicht und es so scheint, als würden Sie tatsächlich als dieser Benutzer anmelden.
Wechseln zum Benutzer apprentice
Wechseln wir nun mit einem vollständigen Umgebungswechsel zum Benutzer apprentice:
su - apprentice
Sie werden nach dem Passwort des Benutzers apprentice gefragt. Geben Sie das Passwort ein, das Sie bei der Benutzererstellung festgelegt haben (password123):
Password: password123
Nach erfolgreicher Authentifizierung ändert sich Ihr Befehlsprompt, um anzuzeigen, dass Sie nun als Benutzer apprentice angemeldet sind. Der Prompt könnte etwa so aussehen:
apprentice@ubuntu:~$
Überprüfung des Benutzerwechsels
Um zu bestätigen, dass Sie nun als Benutzer apprentice agieren, führen Sie den whoami-Befehl aus:
whoami
Die Ausgabe sollte lauten:
apprentice
Sie können auch das aktuelle Arbeitsverzeichnis mit dem pwd-Befehl überprüfen:
pwd
Die Ausgabe sollte zeigen, dass Sie sich im Heimatverzeichnis (home directory) des Benutzers apprentice befinden:
/home/apprentice
Dateien als Benutzer 'apprentice' erstellen
Nachdem wir uns nun als Benutzer apprentice angemeldet haben, erstellen wir einige Dateien, um zu zeigen, dass die in dieser Sitzung ausgeführten Aktionen mit den Rechten des Benutzers apprentice durchgeführt werden.
Erstellung eines Verzeichnisses
Zunächst erstellen wir ein Projektverzeichnis im Heimatverzeichnis (home directory) des Benutzers apprentice:
mkdir -p ~/project
Das -p-Flag stellt sicher, dass der Befehl keine Fehlermeldung ausgibt, wenn das Verzeichnis bereits existiert. Es wird keine Ausgabe angezeigt, wenn der Befehl erfolgreich ausgeführt wird.
Erstellung einer Textdatei
Nun erstellen wir eine Textdatei im Projektverzeichnis:
echo "This is my first file as the apprentice user." > ~/project/apprentice-journal.txt
Beim Ausführen dieses Befehls wird keine Ausgabe angezeigt, aber es wird eine Datei mit dem angegebenen Inhalt erstellt.
Anzeige des Dateiinhalts
Lassen Sie uns den Inhalt der gerade erstellten Datei überprüfen:
cat ~/project/apprentice-journal.txt
Die Ausgabe sollte lauten:
This is my first file as the apprentice user.
Überprüfung der Dateibesitzerschaft
Wir können auch überprüfen, ob die Datei vom Benutzer apprentice gehört wird:
ls -l ~/project/apprentice-journal.txt
Die Ausgabe sollte in etwa so aussehen:
-rw-rw-r-- 1 apprentice apprentice 44 Oct 15 13:45 /home/apprentice/project/apprentice-journal.txt
Beachten Sie, dass sowohl der Benutzer- als auch der Gruppenbesitzer der Datei auf apprentice festgelegt sind. Dies bestätigt, dass die Datei mit den Rechten des Benutzers apprentice erstellt wurde.
Zurück zum ursprünglichen Benutzer wechseln
Nachdem Sie die Aufgaben als Benutzer apprentice abgeschlossen haben, ist es an der Zeit, zurück zum ursprünglichen Benutzerkonto zu wechseln. Dies ist eine gängige Vorgehensweise, wenn Sie vorübergehend Aktionen als ein anderer Benutzer ausführen müssen und anschließend wieder zu Ihrem Hauptkonto zurückkehren möchten.
Beenden der apprentice-Benutzersitzung
Um zur ursprünglichen Benutzersitzung zurückzukehren, geben Sie einfach exit ein oder drücken Sie Strg+D:
exit
Sie sollten sehen, dass sich der Befehlsprompt wieder in den Prompt Ihres ursprünglichen Benutzers ändert, der in etwa so aussehen könnte:
labex@ubuntu:~/project$
Überprüfung des Benutzerwechsels
Um zu bestätigen, dass Sie erfolgreich zurück zu Ihrem ursprünglichen Benutzerkonto gewechselt haben, führen Sie den whoami-Befehl aus:
whoami
Die Ausgabe sollte lauten:
labex
Zugriff auf Dateien, die von anderen Benutzern erstellt wurden
Auch wenn Sie zurück zu Ihrem ursprünglichen Benutzer gewechselt haben, können Sie immer noch auf Dateien zugreifen, die vom Benutzer apprentice erstellt wurden, wenn Sie die entsprechenden Berechtigungen haben:
cat /home/apprentice/project/apprentice-journal.txt
Die Ausgabe sollte den Dateiinhalt anzeigen:
This is my first file as the apprentice user.
Vergleich des Benutzerkontexts
Nachdem Sie nun den Wechsel zwischen Benutzern erlebt haben, demonstrieren wir den Unterschied im Benutzerkontext, indem wir die Pfade der Heimatverzeichnisse (home directory) überprüfen:
echo "My home directory is: $HOME"
Die Ausgabe sollte das Heimatverzeichnis Ihres ursprünglichen Benutzers anzeigen:
My home directory is: /home/labex
Wenn Sie wieder zum Benutzer apprentice wechseln und den gleichen Befehl ausführen, würde die Ausgabe anders aussehen:
su - apprentice ## (Führen Sie dies jetzt nicht aus, nur zur Veranschaulichung)
echo "My home directory is: $HOME" ## Würde anzeigen: My home directory is: /home/apprentice
Dies zeigt, wie der su-Befehl mit der Option - den Benutzerkontext vollständig wechselt, einschließlich Umgebungsvariablen wie $HOME.
Zusammenfassung
In diesem Lab haben Sie essentielle Fähigkeiten zur Linux-Benutzerverwaltung gelernt:
- Erstellen eines neuen Benutzerkontos mit dem
adduser-Befehl - Gewähren von
sudo-Rechten an einen Benutzer mit demusermod-Befehl - Wechseln zwischen Benutzern mit dem
su-Befehl - Erstellen von Dateien als ein anderer Benutzer
- Überprüfen des Benutzerkontexts mit Befehlen wie
whoamiund Prüfen von Umgebungsvariablen - Rückkehr zu Ihrem ursprünglichen Benutzer mit dem
exit-Befehl
Diese Fähigkeiten sind grundlegend für die Linux-Systemadministration und die täglichen Operationen in multi-user-Umgebungen. Der Benutzerwechsel ermöglicht es Administratoren, Aufgaben mit unterschiedlichen Berechtigungsstufen auszuführen und ordnungsgemäße Sicherheitsverfahren einzuhalten, indem sie die ständige Verwendung des Root-Kontos vermeiden.
Das Verständnis der Benutzerverwaltung in Linux hilft Ihnen:
- Die System-Sicherheit durch die Verwendung geeigneter Benutzerberechtigungen aufrechtzuerhalten
- Probleme im Zusammenhang mit Berechtigungen zu beheben
- Anwendungen und Konfigurationen aus verschiedenen Benutzerperspektiven zu testen
- Multi-User-Systeme effektiv zu verwalten
Während Sie Ihre Linux-Reise fortsetzen, werden diese Fähigkeiten als Grundlage für fortgeschrittenere Systemadministrationstasks dienen.



