Variable in Python festlegen; in einem Shell-Script benutzen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Ubuntuxer hat geschrieben:Tut mir leid, aber ich verstehe nicht was du mit Environment meinst. :(
Deine Umgebungsvariablen.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Ubuntuxer
User
Beiträge: 42
Registriert: Donnerstag 17. April 2008, 15:49

Ok, aber ich verstehe das trotzdem noch nicht so ganz. Wie soll ich denn alle Umgebungsvariablen bei env einpacken?
Wie genau hilft mir das bei meinem Problem mit gksu?

PS: Ich habs auch mal mit kdesudo probiert gleiches Problem wie gksu.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Ubuntuxer hat geschrieben:Ok, aber ich verstehe das trotzdem noch nicht so ganz. Wie soll ich denn alle Umgebungsvariablen bei env einpacken?
``env=os.environ`` zum testen. Wenn es dann tut, dann heißt es, dass es neben $DISPLAY noch weitere Umgebungsvariablen benötigt.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Ubuntuxer
User
Beiträge: 42
Registriert: Donnerstag 17. April 2008, 15:49

Es funktioniert leider nicht, hängt sich nun ohne Fehlermeldung einfach auf.
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Ubuntuxer hat geschrieben:Es funktioniert leider nicht, hängt sich nun ohne Fehlermeldung einfach auf.
Ich denke nicht, das es sicht aufhängt, sondern wahrscheinlich einfach blockiert, weil auf eine Eingabe gewartet wird. Vielleicht läuft ja gksu irgendwo und du siehst es nur nicht.

Aber nochmal, warum verwendest du nicht das normal "sudo" so das der User im Terminal das Passwort eingeben kann?

Teste doch mal, was passiert, wenn du den selben Aufruf per sh script machst. Funktioniert es dann?

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Benutzeravatar
Rebecca
User
Beiträge: 1662
Registriert: Freitag 3. Februar 2006, 12:28
Wohnort: DN, Heimat: HB
Kontaktdaten:

jens hat geschrieben:Aber nochmal, warum verwendest du nicht das normal "sudo" so das der User im Terminal das Passwort eingeben kann?
Falls sich das nicht in der Zwischenzeit geaendert hat, geht das nicht, da su, sudo etc nur Passwoerter nehmen, die ueber ptys/ttys kommen, nicht ueber Pipes. Siehe z.B. in diesem Thread.
Offizielles Python-Tutorial (Deutsche Version)

Urheberrecht, Datenschutz, Informationsfreiheit: Piratenpartei
Ubuntuxer
User
Beiträge: 42
Registriert: Donnerstag 17. April 2008, 15:49

Aber nochmal, warum verwendest du nicht das normal "sudo" so das der User im Terminal das Passwort eingeben kann?
Ich möchte das Script in einer GUI starten und dann ist es ziemlich blöde wenn man das Passwort im Terminal eingeben muss.
Falls sich das nicht in der Zwischenzeit geaendert hat, geht das nicht, da su, sudo etc nur Passwoerter nehmen, die ueber ptys/ttys kommen, nicht ueber Pipes. Siehe z.B. in diesem Thread.
danke, dies dürfte das Problem lösen;
Ich möchte aber eigentlich unoffizielle Pythonmodule vermeiden, deshalb habe ich mich entschlossen das Problem zu lösen, indem ich das Script so verändere das es sich selbst mit root rechten aufruft, da ich sowieso an dem Script etwas verändern muss und es deshalb komplett in eine Liste speichern muss, oder würdet ihr mir davon wehemend abraten?
defiance
User
Beiträge: 6
Registriert: Montag 21. April 2008, 02:29

Besteht bei GKSU nicht, wie sudo auch, die Möglichkeit auf die Passworteingabe zu verzichten?
Eine weitere, wenn auch sehr häßliche Methode die Umgebungsvariablen zu benutzen ist diese in sudo oder bei dir gksu mit rein zu packen.
Aber nachdem ich diesen Thread gelesen habe, werde ich wohl auch die Variante mit dem Subprozess probieren, diese sieht für mein Problem sehr vielversprechend aus und ist wesentlich eleganter als mein Ansatz.
Antworten