unclutter
在我的 lubuntu 22.04 上,我通过以下命令安装了该包:
sudo apt-get install unclutter
这个包的描述如下:
unclutter 会在您不需要时隐藏 X 鼠标光标,以防止它妨碍操作。您只需移动鼠标即可恢复鼠标光标。
安装并重新启动后,我可以看到以下unclutter
过程ps aux
:
$ ps aux | grep unclutter
myuser 926 0.0 0.1 4704 2784 ? S 09:39 0:00 /usr/bin/unclutter -idle 1 -root
此外,systemctl status
我可以假设已经unclutter
启动,systemd
因为命令的输出systemctl status
包含:
$ systemctl status
├─user.slice
| ├─user-1000.slice
| │ ├─[email protected]
| | ...
| └─session-1.scope
| │ ├─ ...
| │ ├─ ...
| │ ├─ 926 /usr/bin/unclutter -idle 1 -root
... ... ...
整理启动
通过命令apt list --installed
我发现,使用unclutter
还安装了包unclutter-startup
,并且在文档这个其他包的描述是:
用于 unclutter 和 unclutter-xfixes 的自动启动基础设施
这句话解释说unclutter
,按包装unclutter-startup
,有一个自动启动基础设施负责它的启动。
我的问题
该程序可能是由服务启动的,但我不明白启动它的服务是什么。那么如何在不删除包的情况下unclutter
禁用它?unclutter
答案1
在@muru 的帮助下,我找到了我的问题的解决方案。
文件/etc/default/unclutter
通过该文件/etc/default/unclutter
可以选择是否unclutter
在 X 启动后启动,因此可以禁用其启动。
该文件的内容/etc/default/unclutter
如下:
# /etc/default/unclutter - configuration file for unclutter
# Set this option to 'true' if you want to start unclutter
# automagically after X has been started for a user.
# Otherwise, set it to 'false'.
START_UNCLUTTER="true"
# Options passed to unclutter, see 'man unclutter' for details.
EXTRA_OPTS="-idle 1 -root"
正如我们在评论中看到的,为了禁用启动,unclutter
我必须将变量的值设置START_UNCLUTTER
为"false"
:
START_UNCLUTTER="false"
重新启动显示管理器
在完成之前的更改值后,我必须通过以下命令重新启动显示管理器:
sudo systemctl restart display-manager
无需重启。
systemd
不涉及
正如@muru 在该评论中所解释的那样:
那么它不是由 systemd 启动的,而是由其他机制启动的。可能是 XDG 自动启动。根据unclutter-startup 的文件列表,我想这就是剧本
/etc/X11/Xsession.d/90unclutter
。
systemd
未参与此次unclutter
创业。