Linux-Benutzerwechsel

LinuxLinuxBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

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.

Verständnis von Linux-Benutzern und Erstellung 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:

  1. su username - Wechselt zum angegebenen Benutzer, behält aber die aktuellen Umgebungsvariablen bei.
  2. 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

Dateierstellung als Benutzer apprentice

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.

Rückkehr zum ursprünglichen Benutzer

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:

  1. Erstellen eines neuen Benutzerkontos mit dem adduser-Befehl
  2. Gewähren von sudo-Rechten an einen Benutzer mit dem usermod-Befehl
  3. Wechseln zwischen Benutzern mit dem su-Befehl
  4. Erstellen von Dateien als ein anderer Benutzer
  5. Überprüfen des Benutzerkontexts mit Befehlen wie whoami und Prüfen von Umgebungsvariablen
  6. 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.