• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

kde per Multimediatastatur herunterfahren

Grothesk

Ultimate Guru
Ich bräuchte einen Programmaufruf, der mich kde bzw. den kompletten Rechner herunterfahren lässt. Ich will den Befehl nähmlich auf die entsprechende Taste einer Multimediatastatur legen. Ich habe aber nur was gefunden, für das ich root sein müsste. Wie würde ich denn als user den normalen kde-Abmeldebildschirm aufrufen?
 
Kannst die Taste doch einfach zuweisen ...
(... oder hab ich die frage nicht verstanden?)

KDE-Kontrollzentrum
Regionaleinstellungen & Zugangshilfen
Tastenkürzel
Allg. Tastenkürzel -> Arbeitsfläche

Abmelden
Ohne Bestätigung abmelden
Ohne Bestätigung anhalten
Ohne Bestätigung neu starten
 
OP
G

Grothesk

Ultimate Guru
Hm. Ich mache das mit keytouch. Da werden die Tasten gemappt. Ich weiß jetzt nur nicht den Befehl, den ich der Taste mitgeben kann. Ich müsste also wissen, was hinter den Aktionen im Kontrollcenter steckt
 
Also, ich mache es eher mit
dcop ksmserver ksmserver logout

Aber in einem etwas anderen zusammenhang, hier im Forum wurde mal ein sleep-script erstellt. Leider habe ich vergessen den Autor per Kommentar reinzuschreiben ;)

Code:
#!/bin/bash
sleep $1 && dcop ksmserver ksmserver logout 0 2 0

Nun, sleep alleine würde kde ja einfach killen, deshalb muss es erst mal ausgeloggt werden ;)
mein Kde 3.5.3 ist sehr frisch, hier habe ich es noch nicht ausprobiert, aber mit allen vorhergehenden (3.4.x bis 3.5.2) hat es wunderbar geklappt.
 
@cabecamole
Wie rufst du das Script denn auf?
'sleep' benötigt doch einen Parameter.
Also z.B.
Code:
logout_script 5
Macht für mich irgendwie keinen Sinn ... außer dass der Befehl mit Verzögerung ausgeführt wird ... :?
Ich lass mich aber gern eines besseren belehren ... :wink:

Was den Logout angeht ...
... die Funktion logout() ist offensichtlich in mehreren KDE-Applikationen enthalten.
(Ich habe leider kaum Dokumentation zum 'dcopserver' gefunden ...
... falls jemand einen Link hat ... :wink: )
In 'kdesktop' 'logout()' zum Aufrufen des Abmeldedialogs
und in 'ksmserver' 'logout(int int int)' um weitere Parameter zu übergeben.

Herunterfahren (ohne Nachfragen):
Code:
dcop ksmserver ksmserver logout 0 2 0
Neustart (ohne Nachfragen):
Code:
dcop ksmserver ksmserver logout 0 1 0
Logout (ohne Nachfragen):
Code:
dcop ksmserver ksmserver logout 0 0 0

Herunterfahren (Nachfragen):
Code:
dcop ksmserver ksmserver logout 1 2 0
Neustart (Nachfragen):
Code:
dcop ksmserver ksmserver logout 1 1 0
Logout (Nachfragen):
Code:
dcop ksmserver ksmserver logout 1 0 0
 
OP
G

Grothesk

Ultimate Guru
b3ll3roph0n, prima! Mit den Befehlen ging es!
Hab mir jetzt was passendes herausgesucht. Übrigens bei kde 3.5.3.
 
Wollte ich auch nur Ergänzen ... für die Nicht-Update-Süchtigen :lol: :lol:

Btw.: Seit KDE 3.5.3 wurde 'dcop' etwas einfacher in der Nutzung:
Einfach mal 'dcop' in der Konsole eingeben ... und sich mit <TAB> die Applikationen/Funktionen anzeigen lassen ...
 
b3ll3roph0n schrieb:
@cabecamole
Wie rufst du das Script denn auf?
'sleep' benötigt doch einen Parameter.
Also z.B.
Code:
logout_script 5
Macht für mich irgendwie keinen Sinn ... außer dass der Befehl mit Verzögerung ausgeführt wird ... :?
Ich lass mich aber gern eines besseren belehren ... :wink:

[...]

Genau so mache ich es immer :)
Und auch ein danke von mir für die ausführung der Befehle, so steht meinen Scriptübungen nichts mehr im Wege ;)
 
Oben