Ich habe versucht, in CentOS durch Ausführen zu 'root' zu wechseln su
. Es ändert sich zwar zu "root", aber es scheint kein echter "root" -Nutzer zu sein.
Beispielsweise wird der ifconfig
Befehl in standardmäßig /sbin
nicht im Pfad eines normalen Benutzers gefunden, aber für 'root' kann der Befehl gefunden werden. Wenn ich laufe su
, erhalte ich immer noch eine bash: ifconfig: command not found
Ausgabe, wenn ich versuche zu rennen ifconfig
.
Wenn ich jedoch renne su -
, ifconfig
funktioniert es einfach.
Was ist der Unterschied zwischen su
und su -
in CentOS?
Antworten:
Das Hinzufügen der
-
Option wirkt sich auf Ihr Umgebungsverhalten aus. Für alle praktischen Zwecke wird die Umgebung vollständig zurückgesetzt. Im Allgemeinen möchten Sie wahrscheinlichsu -
anstelle von einfach verwendensu
. Von der Manpage:quelle
su -
Ruft eine Anmeldeshell auf, die unter anderem sicherstellt, dass Roots.bashrc
und andere Shell-Startskripte ausgeführt werden, als ob Sie sich direkt als Root über die Konsole oder SSH angemeldet hätten. Das Profil von root legt normalerweise Ihren Pfad so fest, dass er enthält/sbin
, wo imifconfig
Allgemeinen lebt.quelle