[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

kpowersave workaround



Ich denke gerade über einen Workaround für
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=414775
nach. Es würde mir dabei reichen, wenn es für zwei Nutzer funktioniert.
Was ich bisher gemacht habe ist eine Datei in .kde/Autostart/ die
folgende zwei Befehle ausführt: 

sudo /usr/bin/killall kpowersave 2> /dev/null
sudo /usr/bin/kpowersave

Problem an der Lösung: wenn sich der User der als sich als zweiter
eingeloggt hat wieder ausloggt, läuft gar kein kpowersave mehr und der
Rechner läuft bis zum nächsten Stromausfall...

Jetzt wäre es schön, wenn ich z.B. der .bash_logout des einen users
beibringen könnte, den kpowersave für den verbleibenden user zu starten
sofern vorhanden. Falls es eine einfachere Möglichkeit gibt das
abzufragen bin ich auch hier für einen Tipp dankbar:

sudo lsof -c kdeinit -u ulrich | grep ^kdeinit | tail -n1 && \
	ssh -X $andereruser@localhost $script

Mein Problem ist der ssh-Aufruf. Wenn ich erst per ssh zum anderen
user wechsle und dann das Script starte funktioniert das ganze. In
einem abgesendet (wie oben) bekomme ich die Fehlermeldung: 

$ ssh -X ulrich@primus /home/ulrich/.kde/Autostart/10powersave
Error: "/tmp/ksocket-ulrich" is owned by uid 1000 instead of uid 0.
Link points to "/tmp/ksocket-root"
Error: "/tmp/ksocket-ulrich" is owned by uid 1000 instead of uid 0.
Link points to "/tmp/ksocket-root"
Error: "/tmp/kde-ulrich" is owned by uid 1000 instead of uid 0.
Link points to "/tmp/kde-root"
kbuildsycoca running...
Error: "/var/tmp/kdecache-ulrich" is owned by uid 1000 instead of uid 0.
Link points to "/var/tmp/kdecache-root"
Error: "/tmp/kde-ulrich" is owned by uid 1000 instead of uid 0.
Link points to "/tmp/kde-root"
Error: "/var/tmp/kdecache-ulrich" is owned by uid 1000 instead of uid 0.
Link points to "/var/tmp/kdecache-root"
Error: "/var/tmp/kdecache-ulrich" is owned by uid 1000 instead of uid 0.
Link points to "/var/tmp/kdecache-root"

Außerdem gehört nach der Aktion meine .ICEauthority root, was einige
weitere Fehlermeldungen hervorruft. 

Meine Frage ist jetzt, ob es eine Möglichkeit gibt, das durchzuführen
was ich will (falls das überhaupt jemand verstanden hat :-/)
Ein user soll also im Namen eines anderen users ein Script ausführen,
das wiederum root-Rechte für einen Befehl benötigt[1]. Oder ist es
einfacher (und trotzdem gefahrlos/-arm) dem kpowersave ein Setuid zu
spendieren?

Ulrich Fürst

[1] bekommt der Befehl z. Z. über sudo


Reply to: