• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] su, su -l root

Waschbaer

Member
Hi,

wenn hier im Forum etwas mit root-Rechten ausgeführt werden soll, dann wird meistens geschrieben man soll sich mit
Code:
su
als root einloggen.

Ich habe im Internet jetzt schon des öfteren gelesen, dass
Code:
su -l root
besser wäre.

Was genau ist nun der Unterschied zwischen diesen beiden Möglichkeiten?
 

Grothesk

Ultimate Guru
'man su'

Mit 'su -l root' oder 'su -' (Die Optionen sind gleich) werden die Umgebungsvariablen von su eingestellt. Bei mir ist es so, das wenn ich z. B. smart von su aus starte die Meldungen englisch sind, bei start von su - aus sind die Meldungen deutsch. Das liegt daran, das für root die Sprach-Vriable auf deutsch gesetzt ist.
 
Moin Waschbaer,

das - ist die Abkürzung für -l bzw. --login. Damit wird die Shell zur Loginshell und für den anzumeldenden Benutzer werden seine gesetzten Variablen verwendet. Letztlich ist das in etwa so als würdest Du per <STRG><ALT><Fx> eine neue Sitzung starten. Den Benutzer root mußt Du nicht angeben, da immer root als Benutzer gewählt wird wenn kein Name angegeben wurde.
 

mada

Hacker
su ohne - gibt Dir nicht die passenden Pfäde, da manche eben nicht für normale User eingetragen sind, z.B. /sbin. So findest Du dann den Befehl ifconfig usw. nicht, nur wenn Du den kompletten Pfad dahin angibst /sbin/ifconfig.

Mit printenv kannst Du mal Deine kompletten Umgebungsvariablen anschauen und vergleichen, was bei root (dem echten, mit su -) so anders ist.

Ich mach immer gleich su -.
 
Oben