しばらくすると、デスクトップロックが機能しなくなるのはなぜですか?

しばらくすると、デスクトップロックが機能しなくなるのはなぜですか?

xautolockきっと走っているようだ:

$ ps wafux | grep [x]autolock
user   21410  0.0  0.0  20124  2628 ?        S    Nov05   0:04 xautolock -time 10 -notify 30 -notifier notify-send --urgency low --expire-time=10000 -- 'Locking screen in 30 seconds' -locker slock

しかし、私が試したときロックする:

$ xautolock -locknow
Could not locate a running xautolock.

別のものを起動するとxautolock動作します。

$ xautolock -time 10 -notify 30 -notifier "notify-send --urgency low --expire-time=10000 -- 'Locking screen in 30 seconds'" -locker slock&
[2] 18828
$ ps wafux | grep [x]autolock
user   21410  0.0  0.0  20124  2628 ?        S    Nov05   0:04 xautolock -time 10 -notify 30 -notifier notify-send --urgency low --expire-time=10000 -- 'Locking screen in 30 seconds' -locker slock
user   18828  0.0  0.0  20124  2708 pts/1    S    08:30   0:00      \_ xautolock -time 10 -notify 30 -notifier notify-send --urgency low --expire-time=10000 -- 'Locking screen in 30 seconds' -locker slock
$ xautolock -locknow # Runs fine and locks the desktop

何を提供しますか?

これまでデスクトップとノートパソコンの両方でこれを見ました。少なくとも起動後、最初のロックは正しく機能します。不明な時間やイベントが発生した後に失敗し始めます。


私は持っていますいいえこれを安定して再現できます。つまり、私は私のラップトップで次のことを試みました。スクリーンセーバーショートカット/コマンドその後、実際にデスクトップをロックします。

  1. ふたを閉める
  2. コンピュータが休止状態になるのを待ちます。
  3. ふたを開けて
  4. 電源ボタンを押す
  5. ログインパスワードを入力して入力してください。Enter

そして

  1. デスクトップロック
  2. 上記と同じ手順

トラッキングコード:

  1. エラーメッセージを印刷する行:error1 ("Could not locate a running %s.\n", progName);
  2. そのようなことが起こるでしょうmessageToSendそれが本当ならそしてtype != XA_INTEGER
  3. のように見えるtype設定しました次の文で:

    (void) XGetWindowProperty (d, root, semaphore, 0L, 2L, False,
                               AnyPropertyType, &type, &format,
                               &nofItems, &after,
                               (unsigned char**) &contents);
    

これは、実行が検出されるかどうかがxautolock次のように異なる可能性があることを意味しますか?それがポイントですか?そして、この通貨がこれに関連しているかどうかを知りたいです。既知のエラー:

  1. -disable、-enable、-toggle、-exit、-locknow、-unlocknow、および-restartオプションは、そのタスクを実行するためのXサーバーへのアクセスによって異なります。つまり、他のアプリケーションが自分でサーバーを占有すると、そのアプリケーションは一時停止します。

両方を使用すると競合が発生する可能性がありますかxautolock?上記の行に加えて、次のものがあります。xss-lockslockxautolock.xprofileの行:

xss-lock slock &

両方とも呼び出すことxautolockができるので、問題は次のとおりです。xss-lockslock

ノートパソコンの省電力状態を検知できるので、代わりxss-lockに使いたかったのに動作しxautolockないようです。xss-locknotify-send

ベストアンサー1

私にとっては、xautolockプロセスはまだバックグラウンドで実行されていますが、どのxautolock -locknowコマンドも受け取りません。 @jrmが述べたように、アプリケーションは「スクリーンセーバー」を抑制する必要があります。。私たちの両方にとって、これはmpv(ビデオプレーヤー)がスクリーンセーバーを無効にしたためです。

~/.config/mpv/configmpvの場合、修正はorに以下を追加することです~/.mpv/config

stop-screensaver=no

mpvを使用していない場合は、他のアプリケーションがスクリーンセーバーを無効にしている可能性があります。一般的に使用されているいくつかを試して、どれが自分に適しているかを確認してください。


欲しいなら動画再生中の自動画面ロック防止の一般的なアプローチは、xautolockの「コーナー」機能を使用することです。

xautolock -corners 000- -cornersize 30

上記のコマンドを使用してマウスカーソルを画面の右下(半径30ピクセル以内)に置くと、自動ロックは一時的に無効になります。


もう一つ試してみるのは、次-resetsaverのオプションです。

xautolock -resetsaver

または-detectsleepオプション:

xautolock -detectsleep

おすすめ記事