xss-lock、loginctl lock-sessions、xsecurelock 在 Arch 上無法一起工作

xss-lock、loginctl lock-sessions、xsecurelock 在 Arch 上無法一起工作

我在 arch 上安裝了 xsecurelock,我可以透過執行 來鎖定會話xsecure lock。但是,嘗試鎖定 withloginctl lock-session不會執行任何操作(沒有錯誤,只是沒有輸出,並且沒有鎖定)。

根據我所做的研究,loginctl lock-session大概是在調用xss-lock,但我看不到如何配置 xss-lock 來知道它應該使用 xsecurelock 作為儲物櫃。

運行xss-lock抱怨沒有指定儲物櫃,運行xss-lock xsecurelock只是掛起。

答案1

運行 xss-lock xsecurelock 只是掛起。

是的,這就是它應該做的。

重點loginctl lock-session[s]是它不跑步任何直接的事情;相反,它會向桌面會話中已運行的程式廣播「鎖定」訊號 - 基本上是告訴桌面環境自行鎖定。 (這巧妙地避免了嘗試從外部啟動儲物櫃時遇到的所有「缺少環境變數」問題。)

因此,「xss-lock」意味著作為後台程序永久運行——守護進程,僅在會話級別,而不是在系統級別。您可以從 ~/.xprofile 中使用&後台啟動它,也可以從視窗管理器的「自動運行」設定(幾乎所有 WM 都有一些)啟動它。

例如,如果您使用 i3,則需要新增exec xss-lock xsecurelock至 ~/.i3/config。或者,如果您使用「startx」啟動所有內容,則xss-lock xsecurelock &在 ~/.xinitrc 中新增某處。

答案2

如上所述這裡 xss-lock掛起是因為它等待DPMS signaling觸發。正如使用者 1686 所說,您需要將&命令放在~/.xinitrcor ~/.xprofile(無論您使用什麼)中,以免xss-lock掛起(否則您可能最終會掛起整個會話)。

如果您想手動鎖定,使用 沒有任何意義xss-lock。您可以直接xsecurelock從終端使用,也可以根據您的 DE/WM 將其綁定到金鑰來使用。

xss-lock因此,由於不活動等原因而使用自動鎖定是有意義的。為此,您需要使用xset我發布的連結中提到的內容。以下是我的設定方法(我使用 LightDM 的dm-tool lock命令來鎖定會話)。

~/.xinitrc
# Some other things ...

xset s on
xset s 300 # Signal after 5 minutes / 300 seconds of inactivity
xss-lock dm-tool lock &
# Your's would be xss-lock xsecurelock &

如果我想直接從終端鎖定,我只需dm-tool lock在 WM 的配置中使用或設定一個鍵綁定來調用dm-tool lock.

xss-lock正如您所看到的,除了由於不活動而鎖定之外沒有其他用途

相關內容