Shell und su-Befehl

Shell und su-Befehl

Kann mir bitte jemand erklären, warum ich Folgendes ausgib:

su
echo $0

es sagt:

Schlag

Wann

su -
echo $0

es sagt:

-su

? Habe ich Recht, dass im 1. Fall (nur su) die aktuelle Shell eine neue nicht interaktive Shell erzeugt, während sie im zweiten Fall ( su -) einfach bei der aktuellen Shell bleibt?

Antwort1

Wenn Sie nur verwenden, suübernehmen Sie die Umgebung des Benutzers, der ausgeführt wird su. Wenn Sie dagegen verwenden su -(es ist eine Abkürzung für -logindie Option von su), wechselt es „vollständig“ zum Root-Konto und richtet die Umgebung auf die gleiche Weise ein, als ob Sie sich direkt bei Root anmelden würden.

Antwort2

Alex‘ Antwort ist richtig, aber er hat nicht wirklich erklärt, was Sie sehen. Wenn Sie su -es ausführen, wird die Umgebung des Benutzers importiert, zu dem Sie wechseln (in diesem Fall root). Der letzte Befehl, den Sie als root ausgeführt haben, muss gewesen sein su.

verwandte Informationen