su viz. sudo /Ergänzung
Thilo Six
T.Six at gmx.de
Sam Mai 3 11:00:24 BST 2008
Keywan Najafi Tonekaboni wrote the following on 03.05.2008 11:28
> Hallo,
>
> Am Samstag, den 03.05.2008, 09:53 +0200 schrieb Thilo Six:
> (...)
>> Das funktioniert aber "nur" wenn man sudo als: $ sudo -i
>> aufruft. Wenn man den -s Switch benutzt wie Luise das neulich geschrieben
>> hatte werden die root Dateien nicht gesourced.
>
> Welche Gründe gibt es denn, "sudo -s" zu verwenden. Wie Nils verwende
> ich auch immer sudo su und glaube sudo -i sei vorzuziehen.
>
> Aber für irgendwas muss es ja dieses -s geben :)
> Also in welchen Fällen macht das Sinn?
>
> Grüße,
>
> Keywan
Ich kenn mich nicht gut genug aus um dir da eine profunde Antwort geben zu
können. Aber schauen wir doch mal:
man sudo:
<-----------------------------------------------------------------
Usage
sudo {-i | -s | command}
-i The -i (simulate initial login) option runs the shell specified in
the passwd(5) entry of the user that the command is being run as.
The command name argument given to the shell begins with a `-' to
tell the shell to run as a login shell. sudo attempts to change
to that user's home directory before running the shell. ....
-s The -s (shell) option runs the shell specified by the SHELL envi-
ronment variable if it is set or the shell as specified in
passwd(5).
----------------------------------------------------------------->
$ sudo -s
# env > env-s.txt
# exit
$ sudo -i
# env > env-i.txt
# colordiff -ruN --ignore-blank-lines env-s.txt env-i.txt
--- env-s.txt 2008-05-03 11:44:58.000000000 +0200
+++ env-i.txt 2008-05-03 11:45:12.000000000 +0200
.
.
-PWD=/home/USER
+PWD=/root
.
.
-LANG=de_DE.UTF-8
+LANG=C
Der Unterschied ist wie schon festgestellt der Kontext in dem der Befehl
ausgeführt wird.
Um jetzt sagen zu können, was da technisch gesehen der Unterschied ist müsste
man den Source Code lesen (können).
--
bye Thilo
key: 0x4A411E09