Hi,
On Mon, 13 Dec 2004 17:00:30 +0100 Jens Puruckherr wrote:
wie kann ich aus einem Programm heraus feststellen, ob es im Enviroment eines bestimten Users gestartet wurde? Hintergrund: Der hiwi der gelegentlich mal ein Script starten soll, macht immer ein 'su <username>' statt 'su - <username>'. Im konkreten Fall ist das fatal, da einige spezielle env-Vars benoetigt werden, die dann u.U falsch sind. Wenn nicht richtig ge - su - d wurde, soll das Script die Arbeit verweigern.
Nun kann ich auf eine bestimmt ENV-Variable pruefen, aber geht das nicht allgemeiner?
Achso, das ganze laeuft in Perl.
Ich wüsste nicht, dass du als Skript herausfinden kannst, ob du in der richtigen Umgebung bist, wenn du nicht tatsächlich die Variablen einzeln überprüfen willst. Ich würde direkt bei su ansetzen und schauen, ob du vielleicht PAM dazu zwingen kannst, die Umgebung aufzusetzen oder den Zugang zu verweigern, wenn ohne "-" gestartet.
HTH Frank Benkstein.
PS: Warum ist mit "-" eigentlich nicht der Default? Gibt es einen legitimen Fall, wo man das braucht und sudo nicht taugt?