$ 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
是什么赋予了?
到目前为止,我已经在台式机和笔记本电脑上看到了这一点。请注意,至少在引导锁定后第一次可以正常工作。只有在某个未知的时间或事件之后它才开始失败。
我无法可靠地重现此内容。也就是说,我已经在笔记本电脑上尝试了以下方法,在两种情况下,屏幕保护程序快捷方式/命令实际上都随后锁定了桌面:
- 关上盖子
- 等待计算机进入休眠状态
- 打开盖子
- 按下电源按钮
- 提供登录密码,然后输入 Enter
和
- 锁定桌面
- 与上述相同的步骤
跟踪代码:
- 打印错误消息的行:
error1 ("Could not locate a running %s.\n", progName);
- 如果
messageToSend
是真的,那会发生type != XA_INTEGER
-
(void) XGetWindowProperty (d, root, semaphore, 0L, 2L, False, AnyPropertyType, &type, &format, &nofItems, &after, (unsigned char**) &contents);
这是否意味着是否xautolock
可以检测到运行取决于所关注的窗口?我也想知道此调用是否可能与该已知错误有关:
- -disable,-enable,-toggle,-exit,-locknow,-unlocknow和-restart选项取决于对X服务器的访问以完成其工作。这意味着在某些其他应用程序自己夺走了服务器的情况下,它们将被挂起。
是否有可能xautolock
与xss-lock
两者都使用冲突slock
?除了xautolock
上面的行,我在.xprofile中也有以下行:
xss-lock slock &
既然xautolock
和xss-lock
都可以通话slock
,我怀疑问题出在这样的地方:
xautolock
slock
闲置10分钟后运行。-
$ xset q | grep --after-context=2 --line-regexp --fixed-strings 'Screen Saver:' Screen Saver: prefer blanking: yes allow exposures: yes timeout: 600 cycle: 600
slock
实际上仅产生一个客户端。xss-lock
杀死错误slock
,导致xautolock
崩溃或放弃。
由于xss-lock
可以检测到笔记本电脑睡觉,我想用它代替xautolock
,但我似乎无法做出xss-lock
与工作notify-send
。
.xinitrc
以下位置启动时发现了同样的东西:我切换到--user
服务文件,这不再是问题...
stop-screensaver=no
到~/.mpv/config
。当然,这意味着使用mpv播放视频时必须手动禁用锁定。