用指令登出 KDE 桌面 - Linux

Table of Contents

## 前言

最初契機是遇到 KDE 沒有回應,但應用程式卻活著的狀況。
(後來得知重新啟動 KWin 就恢復,也許是我的顯示晶片異常?)

為了嘗試到 tty 去正常關閉應用程式/存檔,所以才研究這個指令。

網路上一堆人貼這個指令,但沒看過有人詳細解釋那三個數字,很不放心就自己去查了。

## 指令

> qdbus org.kde.ksmserver /KSMServer logout <confirm> <type> <mode>

## 參數說明

* confirm:
+ -1:採用使用者的預設值
+ 0:一律不顯示確認畫面
+ 1:一律顯示確認畫面
* type:
+ -1:採用前一次設定,或使用預設值
+ 0:登出
+ 1:登出並重新開機
+ 2:登出並關機
+ 3:請勿使用,但效果和 0 一樣
* mode:(似乎在 KDE5 沒路用,可能只對關機行為有效)
+ -1:採用前一次設定,或使用預設值
+ 0:排程在所有工作階段結束後關機/重開機
+ 1:如果沒有工作階段就關機,否則取消
+ 2:強制結束所有工作階段並關機
+ 3:若還有使用中的工作階段,先向使用者確認

## 範例

* 不顯示確認畫面就登出:
> qdbus org.kde.ksmserver /KSMServer logout 0 0 -1

* 顯示確認畫面,預設選擇登出,並在閒置 30 秒後登出:
> qdbus org.kde.ksmserver /KSMServer logout 1 0 -1

## 其他應用

可以自製桌面捷徑,方便省略確認畫面並快速關機。

## 參考資料

(這是一行網址)
<https://github.com/KDE/plasma-workspace/blob/
fb30ea87e68407515f9be246426dc27ac2630934/libkworkspace/kworkspace.h>

--

All Comments

Quanna avatarQuanna2022-01-01
source code 應該有 dbus 定義的 xml
Doris avatarDoris2022-01-02
kde現在都獨立元件化了,通常知道誰死掉,重啟就好
Faithe avatarFaithe2022-01-02
X11 你還有機會重起 WM,wayland 就整個 session 帶走
Iris avatarIris2022-01-03
如果你是NVIDIA顯卡的話,據說是NV在雷
Carol avatarCarol2022-01-03
把Compositor設定裡的Scale method: 改Smooth改看看
有陣子kwin常常掛掉時用這樣就比較不會
Lily avatarLily2022-01-04
n卡之前真的很常需要用到kwin_x11 --replace
Queena avatarQueena2022-01-05
已經是Smooth還這樣的話大概只能把Compositor關掉了
Rebecca avatarRebecca2022-01-05
不過印象中會導致新增桌面跟相關的管理功能不能用XD
Carolina Franco avatarCarolina Franco2022-01-06
應該不是說比較適合Kde,而是驅動跟企鵝比較契合
Todd Johnson avatarTodd Johnson2022-01-06
下一台買amd好了
Elizabeth avatarElizabeth2022-01-07
連穩定都做不到了還要什麼笑能
Robert avatarRobert2022-01-08
AMD更慘吧 驅動從ATi時代就一坨屎到今天
Zenobia avatarZenobia2022-01-08
fglrx 是屎沒錯,amdgpu 以後好很多了吧
Una avatarUna2022-01-09
amdgpu確實是好多了y