Bewirkt die Ausführung von „sudo su“ und „su root“ dasselbe?

Bewirkt die Ausführung von „sudo su“ und „su root“ dasselbe?

Was sind die technischen Unterschiede zwischen den beiden? Das einzige, was mir aufgefallen ist, ist, dass

sudo su

erfordert die Eingabe Ihres eigenen Passworts (vorausgesetzt, Sie sind kein Root)

Während

su root

erfordert die Eingabe des Root-Passworts. Allerdings scheinen beide Sie beim Root-Benutzerkonto anzumelden.

Antwort1

Es besteht ein kleiner Unterschied zwischen beiden. su root(kann auch einfach auf abgekürzt werden su) führt den su-Befehl als der Benutzer aus, der ihn aufgerufen hat. sudoführt den angegebenen Befehl ( su) als Root aus. Die Ausführung suals Root ist im Wesentlichen ein No-Op, obwohl wahrscheinlich eine neue Shell gestartet wird. Ausführen sudo -iist (meiner Meinung nach) eine sauberere Art der Ausführung von sudo su.

Wie bereits erwähnt gibt es bei einer Standardinstallation von Ubuntu kein Root-Passwort, sodass der sualleinige Aufruf fehlschlägt.

Antwort2

Der zweite Befehl kann in einer Standard-Ubuntu-Installation nicht ausgeführt werden, bei der das rootKonto nicht aktiviert ist.

Aber angenommen, Sie haben das Konto entsperrt rootund ihm ein Passwort gegeben, dann können sich die beiden Befehle nur in der Umgebung und den Shell-Variablen unterscheiden, denke ich. Vergleichen Sie die Ausgabe envin den beiden Situationen und vielleicht auch die Ausgabe von , setum die Unterschiede zu sehen.

Antwort3

Ein weiterer Unterschied: Der Befehl sudo verwendet IHR Passwort und Sie müssen in der Datei /etc/sudoers autorisiert sein. Die Datei sudoers definiert, welche Befehle Sie mit sudo ausführen dürfen. Der Befehl su verwendet das ROOT-Passwort, das bekannt sein muss.

Je nach Option können Sie die Roots-Umgebung übernehmen oder Ihre eigene weiterführen.

Ich verwende „sudo bash“, um eine Root-Shell zu erhalten. Das ist fast identisch (vielleicht ist es das, ich bin mir nicht sicher) mit „sudo -i“. Die Umgebung wird folgendermaßen gesteuert: „sudo su - other_user“ ruft die Umgebung für other_user ab. Aber „sudo su other_user“ überträgt Ihre Umgebung unter der UID von other_user weiter. Das bedeutet, dass Ihre Aliase und dergleichen verfügbar sein werden.

Außerdem unterscheiden sich die Prüfergebnisse in den Prüfprotokollen, wenn Sie su oder sudo verwenden. Mehr Nachvollziehbarkeit mit sudo. Und schließlich geben Sie bei su das Root-Passwort weiter und haben einen Wartungsaufwand. Wenn Sie Personen mit sudo autorisieren, aktualisieren Sie einfach die sudoers-Datei, um Personen hinzuzufügen oder zu entfernen, und diese müssen sich nur ihr eigenes Passwort merken. Mit Sudoers können Sie auch entscheiden, was andere tun dürfen.

Antwort4

Mit sudo -i geht das, zumindest ab 11.00 Uhr, vorher und nach 12.04 Uhr bin ich mir nicht sicher.

leitet Ihre Umgebung unter der UID von other_user weiter. wie bereits erwähnt

verwandte Informationen