Per Python Script programme als Root ausführen? [Solved]

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.
Antworten
root_tux_linux
User
Beiträge: 36
Registriert: Sonntag 16. Dezember 2007, 04:18

Hi

Ich möchte ein kleines Script für die Bash schreiben in Python später dann evtl. in PyQt.

Mein Problem ist das ich nicht weiss und auch nicht in der Referenz gefunden hab wiedas Modul heisst mit dem man über Python ein "Programm" mit root rechten starten kann.

Kann mir da jemand helfen?
Zuletzt geändert von root_tux_linux am Sonntag 23. Dezember 2007, 10:46, insgesamt 1-mal geändert.
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

root_tux_linux hat geschrieben:über Python ein "Programm" mit root rechten starten
Hallo root_tux_linux!

Willkommen im Python-Forum!

Das überlässt du lieber dem Betriebssystem und dessen Tools.

Die Tools dafür sind: su, sudo und gksu
Wie das Tool für KDE heißt, will mir im Moment nicht einfallen.

An diese Programme wird als Parameter das mit Root-Rechten zu startende Programm übergeben. Dann kann man das Root-Passwort eingeben und das Programm wird als Root ausgeführt.

Ob und wer und wie und was stellt man in /etc/sudoers ein.

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Nicht_zu_definieren
User
Beiträge: 21
Registriert: Freitag 21. April 2006, 17:01
Kontaktdaten:

gerold hat geschrieben:Wie das Tool für KDE heißt, will mir im Moment nicht einfallen.
Ist ganz einfach: kdesu heißt es ;)
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Nicht_zu_definieren hat geschrieben:
gerold hat geschrieben:Wie das Tool für KDE heißt, will mir im Moment nicht einfallen.
Ist ganz einfach: kdesu heißt es ;)
Wobei man besser kdesudo verwenden sollte ;)
root_tux_linux
User
Beiträge: 36
Registriert: Sonntag 16. Dezember 2007, 04:18

Ihr habt mich falsch verstanden :)

Ich würde gern ein Frontend für emerge & revdep-rebuild schreiben

Das Frontend sollte ich als normaler User starten können und dann fragt mich das Frontend nach Root Passwort das es denn übergibt damit ich den emerge und revdep-rebuild als root starten kann.

Klar könnte ich auch den normalen User in die Gruppe von Portage schmeissen oder sudo benutzen aber das möchte ich nicht.


Versteht ihr?


Muss doch nen Python Way geben?

su, sudo, kdesu, gksu etc ist mir bekannt nach 6 Jahren Gentoo ^^
BlackJack

Das ist aber nicht der Unix/Linux-Way. Es ist viel ökonomischer wenn man eines der `su`-Programme benutzt um Programme mit `root`-Rechten zu starten, als wenn einige Programme ihre jeweils eigene Lösung erfinden. Ersteres ist universell einsetzbar, letzteres sorgt für viel unnötige Arbeit bei der immer wieder das gleiche Rad neu erfunden werden muss.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

BlackJack hat geschrieben:Ersteres ist universell einsetzbar, letzteres sorgt für viel unnötige Arbeit bei der immer wieder das gleiche Rad neu erfunden werden muss.
Davon mal abgesehen muss so etwas dann auch vernünftig abgesichert sein. So root-gathering Programme müssen setsuid sein, laufen also mit root-Rechten (die braucht man zum Beispiel um mit PAM überhaupt das Passwort checken zu können).

Daher nutzen auch die GNOME-Admin Applets Tools wie ``gksu``, weil das immer wieder zu implementieren einfach zu umständlich und fehlerträchtig ist.

Und, hmm, du kannst doch gksu für diese Aufgabe verwenden, was spricht da dagegen. Der User muss bei Gentoo in der Gruppe ``wheel`` sein, aber sonst?
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
root_tux_linux
User
Beiträge: 36
Registriert: Sonntag 16. Dezember 2007, 04:18

k :)

Mir wurde jetzt von nem Kollegen pexpect empfohlen was ich mir mal angucke.

Danke auf jedenfall für die Infos.
AMD Athlon 64 X2 6000+, ASUS M2N-SLI Deluxe, ASUS EN8600GTS Silent, 4GB Apacer DDR2 800Mhz | Gentoo Linux x86_64
AMD Sempron 2500+, MSI KT4, ASUS N6200, 2x 512MB Apacher DDR 400Mhz, Hauppauge PVR150 | Arch Linux i686
### Sorry for my bad english ###
Antworten