如何在 Linux/Debian 上永久禁用应用程序的自动启动?

如何在 Linux/Debian 上永久禁用应用程序的自动启动?

许多 GNU/Linux 发行版都配置了大多数用户不需要的自动启动功能,并且存在隐私和安全风险(即使很小)。原则上,仅自动启动实际需要的东西是有意义的,以减少崩溃的可能性、不相关日志条目的数量、硬件资源消耗和攻击面(例如,由于任何软件或端口中的潜在漏洞)他们听)。

问题是,当升级软件包或像 Debian 这样的发行版时,自动启动可能会再次启用。最好的方法是什么永久禁用自动启动没有删除该软件包(这通常是不可能的,因为自动启动软件包附带了一些其他所需的软件包)。

在针对一种特定的不需要的默认自动启动软件的各种问题中,建议使用不同的方法来禁用自动启动:

  • 删除(或移动)自动启动文件夹中的文件Orca 屏幕阅读器就像这样 sudo rm /etc/xdg/autostart/orca-autostart.desktop
  • systemctl --user disable at-spi-dbus-bus.service类似于推荐的东西这里是屏幕阅读器 KDE Accessible或用于地理位置跟踪器 geoclue-demo-agent.desktop
  • 删除可执行标志,以便每当有人想要像推荐的+x那样运行应用程序时,都需要首先手动设置(使用 )sudo chmod -x /usr/lib/x86_64-linux-gnu/libexec/kdeconnectd && pkill kdeconnectd这里是无线通信监听器 KDE Con​​nect
  • 将 .desktop 文件复制到 .config 文件夹并进行更改,使其不会自动启动(具有讽刺意味的是,这使得它在 KDE 的系统设置 -> 自动启动中显示)之前没有在那里显示过)例如像这样cp /etc/xdg/autostart/org.kde.kalendarac.desktop ~/.config/autostart,然后按照建议在 ~/.config 中的文件中更改crc:General:Autostart:true为 false:false此处查看日历提醒Hidden=true按照建议添加到该文件这里
  • 将文件重命名/etc/xdg/autostart/filename.desktop.disabled
  • 将其从 D-Bus 自动启动服务中删除/usr/share/dbus-1/services/或将修改后的版本放入~/.local/share/dbus-1/services/
  • 上述操作的组合,例如从自动启动文件夹中删除文件,但保留一个 .config 文件,如果通过某些升级(尤其是发行版升级)恢复该文件,该文件应禁用自动启动。

现在我不知道该使用哪种方法,并且我尝试过的所有方法似乎在升级后都会重置。如果软件包升级,.desktop 文件可能会被覆盖。

答案1

如果 中存在自动启动文件,则即使在包更新后,也可以将/etc/xdg/autostart其复制到~/.config/autostart并添加。Hidden=True如果存在禁用/屏蔽服务的选项,那么该方法也应该在更新后继续存在。

您没有提到的另一种方法,但也可能是一种解决方案:如果程序遵循插入目录 - sudo,例如读取文件/etc/sudoers.d- 那么此处的自定义设置也可能有效。

相关内容