Comment puis-je arrêter / redémarrer / déconnecter KDE en toute sécurité à partir de la ligne de commande?

22

Je ne parle pas shutdownet les rebootcommandes. Je veux lancer la même routine à partir de la ligne de commande qui serait effectuée si j'appuyais sur le bouton de déconnexion / redémarrage / arrêt à l'intérieur du bureau KDE.

txwikinger
la source
Je ne sais pas si tu peux faire ça. l'une des commandes fermerait éventuellement le terminal que vous utilisez pour interagir avec lui. Peut-être plus d'idées sur la raison pour laquelle vous devez faire cela? :)
myusuf3
Je dois le faire parce que plasma-desktop agit parfois et je veux toujours conserver les informations de session qui sont enregistrées lors de la déconnexion
txwikinger

Réponses:

24

Pour kde4:

qdbus org.kde.ksmserver /KSMServer org.kde.KSMServerInterface.logout -1 -1 -1

Les trois paramètres entiers sont les arguments confirm, sdtypeet sdmodeà KWorkSpace :: requestShutDown . Leurs valeurs sont expliquées en haut de la page.

Gilles 'SO- arrête d'être méchant'
la source
La réponse de Gilles m'a également aidé. Juste une petite note: ça ne marche pas de su. Dans mon cas, cela faisait partie d'une commande émise à l'aide de sudo. Dans ce cas, cela ne fonctionne pas. Se plaint Cannot find 'org.kde.KSMServerInterface.logout' in object /KSMServer at org.kde.ksmserver.
Fonctionne
3

Pour toute version de KDE (peut-être aussi GNOME et autres):

Dans KDE Control Center (KDE3.5 / trinity), vous pouvez définir un raccourci clavier pour "arrêter sans confirmation" (devrait être compliqué pour éviter une tragédie, comme Ctrl+ Shift+ Alt+ Delete), puis exécuter xvkbd(clavier virtuel):

xvkbd -text '\C\S\A\d'

Vous pouvez créer un alias pour cela (par exemple kdehalt);

Mon préféré: sleep 1h 20m && kdehaltou wget "http://something" ; kdehalt.

Zdeněk Válek
la source
2

J'ai donc essayé la réponse présentée par Gilles, mais cela ne fonctionne que pour KDE4.

Après une mise à jour du système avec mes graphiques, je ne pouvais plus me déconnecter, redémarrer ou arrêter. Finalement, cette commande a fonctionné:

qdbus org.kde.ksmserver /KSMServer logout 0 0 0

Ma source est d'ici, où ils en discutent un peu plus. Je ne suis pas sûr des autres optoins. Discussion sur le sujet du forum Options d'arrêt de KDE5. La commande ci-dessus semble avoir arrêté mon système avec élégance. Tous mes programmes sont revenus comme prévu, dans le bon ordre de mise en page, et il ne semble rien manquer. Si cela ne fonctionne pas, veuillez commenter et j'ajusterai ma réponse, mais jusqu'à présent, c'est tout ce qui a fonctionné pour un arrêt KDE5 gracieux lorsque mon est verrouillé. (J'aurais évidemment pu utiliser la commande shutdown ou appeler init, mais celles-ci ne sont pas gracieuses.)

CD
la source