「GNOME」- 禁用某些服务及应用

  CREATE BY JENKINSBOT

该笔记将记录:在 GNOME 中,某些服务的作用,以及如何禁用他们。

相关链接

How to install minimal Gnome on Ubuntu 20.04 Focal Fossa Linux – LinuxConfig.org

禁用 GNOME Software 服务

autostart – Disable gnome-software from loading at startup – Ask Ubuntu
ShowHiddenStartupApplications – Community Help Wiki

在用户登录后,将启动 GNOME Software 服务,但是我们从未使用该服务,因此我们想禁用该服务。

但是下面的这种方法是无效的:

# cp -v /etc/xdg/autostart/gnome-software-service.desktop ~/.config/autostart/
# sed -i "s/NoDisplay=true/NoDisplay=false/g" ~/.config/autostart/gnome-software-service.desktop
# sed -i '$a X-GNOME-Autostart-enabled=false' ~/.config/autostart/gnome-software-service.desktop

# cat ~/.config/autostart/gnome-software-service.desktop
[Desktop Entry]
Type=Application
Name=GNOME Software
Exec=/usr/bin/gnome-software --gapplication-service
OnlyShowIn=GNOME;Unity;
NoDisplay=false
X-GNOME-Autostart-enabled=false

我们只能换种方法,但是风险更高:

# apt-get remove gnome-software
...
The following packages will be REMOVED:
  gnome gnome-core gnome-software task-gnome-desktop
0 upgraded, 0 newly installed, 4 to remove and 10 not upgraded.
...

# dpkg-query --listfiles gnome gnome-core task-gnome-desktop
/.
/usr
/usr/share
/usr/share/bug
/usr/share/bug/gnome
/usr/share/bug/gnome/control
/usr/share/bug/gnome/presubj
/usr/share/doc
/usr/share/doc/gnome
/usr/share/doc/gnome/changelog.gz
/usr/share/doc/gnome/copyright

/.
/usr
/usr/share
/usr/share/bug
/usr/share/bug/gnome-core
/usr/share/bug/gnome-core/presubj
/usr/share/doc
/usr/share/doc/gnome-core
/usr/share/doc/gnome-core/changelog.gz
/usr/share/doc/gnome-core/copyright

/.
/usr
/usr/share
/usr/share/doc
/usr/share/doc/task-gnome-desktop

// 没有什么关键的文件,并且 APT 已经处理好依赖关系,我们可以安心卸载

# apt-get remove -y gnome-software

// 下面的步骤是可选步骤,用于移除 GNOME Software 相关的包

# apt-get remove -y gnome-software-common

// 或者执行如下命令,一步到位

# apt-get purge gnome-software

禁用 PackageKit 服务

方法一、稳妥操作:How to disable PackageKit

方法二、风险操作:直接卸载 PackageKit 软件包:

// 如果直接卸载 PackageKit 软件包,会提示卸载依赖的 gnome gnome-core 等等软件包

// 建议使用 dpkg-query --listfiles "<package-name>" 检查是否会卸载关键文件

// 在检查结束后,如果没有任何问题,可以直接卸载 PackageKit 软件包

# apt-get purge -y packagekit

// 我们直接卸载 PackageKit 软件包,目前系统运行正常。

禁用 GeoClue 服务

BLFS/GeoClue-2.4.11
Can’t disable geoclue.service ?
systemd “static” unit file state
Understanding And Using Systemd

它是”基于D-Bus消息传递系统构建的“模块化地理信息服务。该项目目标是使”位置感知应用程序的创建“尽可能简单。

我们都把位置服务禁用(在Settings/Privacy中)了,还要这个干嘛,所有禁用该服务即可:

systemctl disable geoclue.service
systemctl stop geoclue.service
systemctl mask geoclue.service # 因为它是一个静态服务(作为依赖存在,其他服务依赖于它,并且定义中没有[Install]部分)