void Linuxの使用にはいくつかの問題があります。 zzzにスクリプトとしてslockを追加してみました。/etc/zzz.d/suspend/slock
#!/bin/sh
slock
奇妙な方法で動作します。呼び出すと、zzz
slockが発生し、パスワードを入力してロックが解除されるまで停止しません。スクリプトをに移動して/etc/zzz.d/resume/slock
再起動すると、ロック解除画面がしばらく点滅し、画面がロックされます。良くないけど大丈夫です。
しかし、別の問題があります。カバーを閉じるとラップトップは停止しますが、画面はまったくロックされません。私の考えにはこれと関連があると思いますacpid
。acpid
カバーを閉じてもノートブックを無効にするとノートブックが一時停止しないため、これは間違いなくacpid
責任があります。パッチを試してみましたが、/etc/acpi/handler.sh
次のようになります。
close)
# suspend-to-ram
logger "LID closed, suspending..."
slock
zzz
;;
open) logger "LID opened" ;;
*) logger "ACPI action undefined (LID): $2";;
とにかくslock
実行されません。私はzzz
それを取り除き、handler.sh
キャップを閉めても何も起こりません。つまり、実際にzzz
存在するときに実行されますが、zzz
何らかの理由でユーザースクリプトを実行しないことを意味します。私も両方をslock
(例:voidi3lock
handler.sh
ウィキペディア提案)zzz.d/resume
しかし同じです。私が何か間違っているのでしょうか、それともこの動作を引き起こす他の問題がありますか?
ベストアンサー1
次のように問題を解決してください。
/etc/zzz.d/サスペンド/01
#!/bin/sh
doas -u ds xsecurelock &
sleep 2
/etc/doas.conf
permit persist :wheel
permit nopass root as ds cmd xsecurelock
permit nopass :wheel as root cmd zzz
permit nopass :wheel as root cmd ZZZ
permit nopass keepenv root as root
一時停止スクリプトでは、ルートに対して$ DISPLAYを定義してみることができますが、これを見つけるのはとても愚かです。