Linux -Ausführungsbefehle als ein anderer Benutzer

Linux -Ausführungsbefehle als ein anderer Benutzer

Linux ist das beste und am meisten verwendete Open-Source-Betriebssystem. Die Linux -Benutzer haben eine große Anzahl von Optionen zur Auswahl des Betriebssystems. Sie haben Optionen, um Desktop für Ihre Linux -Systeme auszuwählen. Aber immer noch Linux -Profis lieben die Kommandozeile zur Arbeit. Hauptsächlich die Linux Server -Editionen werden nur mit Befehlszeilenoption geliefert, die sie leichter und schneller erstellen.

Die Linux -Benutzer verwenden Shell, um mit Betriebssystemen zu interagieren. In der die Bash (Born Shell) die am häufigsten verwendete Shell und die verfügbare Standardeinstellung für die meisten Systeme ist. Jetzt wird ein Tage ZSH (Z Shell) aufgrund seiner Funktionen auch Popularität zwischen den Benutzern beliebt.

In diesem Tutorial erfahren Sie, wie Sie den Befehl als einen anderen Benutzer in Linux/Unix -Systemen ausführen.

Ausführen des Befehls als anderer Benutzer mit SU

Der Befehl SU (Switch User) wird verwendet, um Shell als einen anderen Benutzer auszuführen. Dieser Befehl wechselt zum neuen Benutzer und lädt seine Umgebung.

Der Basis -SU -Befehl sieht nach unten aus:

Su - Benutzername  

Der obige Befehl, den Sie an einen anderen Benutzer haben, wo Sie Befehle mit diesem Benutzer ausführen können. Unser Ziel ist es jedoch, den Befehl Linux als einen anderen Benutzer auszuführen, ohne auf sie zu wechseln. Überprüfen Sie zu diesem Beispiel das folgende Beispiel.

Ich bin derzeit als Root -Benutzer angemeldet. Sie können Ihren Befehl mit übergeben -C Parameter. Jetzt wird im folgenden Beispiel „LS“ -Befehl als Benutzer Rahul ausgeführt, ohne auf den Benutzer umzusteigen.

SU - RAHUL -C "PWD"  Ausgabe: /Home /Rahul 

Sie können auch mehrere Befehle als einen anderen Benutzer unter Linux ausführen, wie:

Su - Rahul -c "pwd; mkdir Hallo && CD Hallo; Pwd"  Ausgabe:/home/rahul/home/rahul/Hallo 

Im obigen Befehl druckt zuerst das vorhandene Arbeitsverzeichnis mit PWD, und erstellen und wechseln in ein neues Verzeichnis mit dem Namen "Hello". Druckt erneut das vorliegende Arbeitsverzeichnis. Alle Befehle werden wie wir im Allgemeinen mit Semikolon (;) getrennt.

Führen Sie den Befehl als einen anderen Benutzer mit sudo aus

Dies wird im Allgemeinen verwendet, um den Befehl als Root -Benutzer auszuführen. Sie können ihn jedoch auch mit anderen Benutzern verwenden. Hier müssen Sie keine Befehlszeilenschalter verwenden. Geben Sie den Namen des Benutzers ein, auf den Sie den Befehl ausführen möchten. Danach der Befehl, der als definierter Benutzer ausgeführt wird.

Syntax:

sudo -u Benutzername [Befehle…] 

Zum Beispiel schreiben Sie ein Shell-Skript, das als Nicht-Root-Benutzer ausgeführt werden musste. Sie müssen den Apache2 -Dienst jedoch neu starten. In diesem Fall können Sie Sudo verwenden, um den Befehl als Root -Benutzer auszuführen. Wie:

sudo -u root 'systemctl starten apache2' neu starten '  

Führen Sie den Befehl als einen anderen Benutzer mit Runuser aus

Sie können auch verwenden Runuser Befehle als ein weiterer Benutzer in Linux -Systemen ausführen. Dies sind weniger bekannte Befehle der Linux -Benutzer. Verwenden Sie den Befehl runuser, um Befehle mit der effektiven Benutzer -ID und Gruppen -ID des definierten Benutzers auszuführen.

Syntax:

Runuser - Benutzername -c [Befehle…] 

Beispiel - Führen Sie beispielsweise einen Befehl als Benutzer „Rahul“ aus und erstellen Sie ein Verzeichnis in seinem Heimverzeichnis.

Runuser -Rahul -c 'mkdir -p ~/hello'  

Listen Sie dann Dateien unter dem Home -Verzeichnis des Benutzers 'Rahul' auf.

Runuser -Rahul -c 'ls -l'  Ausgabe:> Gesamt 16 -rw-r-R-- 1 Rahul Rahul 8980 15. Februar 2020 Beispiele.Desktop drwxr-xr-x 2 Rahul Rahul 4096 Dez 21 15:55 Hallo 

Sie können auch Booth -Befehle in einem einzigen Befehl ausführen. Fügen Sie einfach mehrere Befehle mit dem getrennten Semikolon hinzu.

Runuser -Rahul -c 'mkdir -p ~/hello; ls -l '  

Abschluss

In diesem Tutorial haben Sie gelernt, Befehle als einen anderen Benutzer im Linux -System auszuführen. Sie haben mit Hilfe von SU-, Sudo- und Runuser Linux -Befehlen ausgeführte Befehle als ein anderer Benutzer gelernt.