如何在 Ubuntu 中管理启动应用程序

如果每次打开计算机时都会自动加载大量服务和应用程序,则启动过程可能需要很长时间才能完成。值得庆幸的是,Ubuntu 允许我们轻松管理启动应用程序并禁用任何我们认为不必要的自动加载。让我们看看如何。

两家初创公司

大多数 Linux 发行版的引导过程分为两个独立的部分。

第一部分从 Linux 内核加载时开始,一直持续到我们到达登录屏幕。启动服务 – 通常系统– 加载基本功能所需的所有服务。这些可能包括蓝牙堆栈、音频子系统等。

第二部分在您登录时开始,由桌面应用程序组成,通常如 Slack 或 Skype。

控制两者都很容易,但是,正如我们将看到的,我们必须为每项工作使用不同的工具。

另请阅读: 如何在 Ubuntu 中启动到恢复模式(安全模式)

系统启动

大多数现代 Linux 发行版(包括 Ubuntu)都依赖 systemd 自动启动任何所需的服务。 Systemd 附带了有用的工具,可以帮助我们检查这个初始启动过程。我们可以使用它们来查看自动加载的所有内容的影响,并禁用我们认为无用的任何内容。

要检查 systemd 加载所有内容所需的时间,请输入systemd-analyze在终端中并按 Enter 键。

Systemd-analyze 将检查 systemd 的日志并显示计算机启动序列完成所需的时间。知道这一点很好,但没有帮助。如果你的启动顺序很慢,那么一定有什么东西加载时间太长,应该归咎于某些东西。这正是 systemd-analyze 允许您做的事情:找出谁应该受到责备。尝试一下:

systemd-analyze blame

这将显示 systemd 加载的所有内容的列表,从最有影响力的条目开始,逐渐向最轻的条目移动。

尖端:如果您有很长的条目列表,可以使用以下命令将列表导出到文本文件:

systemd-analyze blame >> NAME_OF_FILE.txt

分析文本文件比分析终端中的条目更容易。

如果您没有打印机,为什么还要运行打印机服务呢?如果您发现某些服务无用,您可以轻松禁用它们。只需使用:

sudo systemctl disable NAME_OF_SERVICE --now

不过,您应该确定它们毫无用处,并且您永远不会需要它们。这就是为什么值得检查依赖于它们的内容:

sudo systemctl list-dependencies NAME_OF_SERVICE --reverse

管理您的启动应用程序

启动过程的第二部分依赖于桌面环境本身。根据您的发行版和桌面环境,您可以使用不同的工具来控制它。在 Ubuntu 上,您可以通过访问应用程序菜单并键入来找到该工具startup。选择将显示的启动应用程序条目。

将出现“启动应用程序首选项”窗口,显示登录后自动加载的所有应用程序。

要禁用应用程序的自动加载但保留其条目以备将来重新启用它,请取消选中其左侧的复选框。

要完全删除条目,请单击它以将其选中,然后单击右侧的“删除”。

如果某些条目对于使用桌面而言并不重要,您可以延迟加载它们,以便其余应用程序加载得更快。为此,您必须编辑它们的条目并在启动它们的命令之前添加额外的命令,从而手动引入延迟。您可以按如下方式执行此操作:

sleep 60;EXISTING_COMMAND

sleep 60;命令将为启动应用程序添加 60 秒的延迟。

将应用程序添加到启动列表

您也可以在此处将自己的应用程序添加到启动序列中。您可以通过单击右侧的“添加”按钮来完成此操作。

在“名称”字段中输入您想要的启动项的任何名称,然后在适当命名的“命令”字段中输入您的命令。或者,您可以单击该字段右侧的“浏览...”按钮,然后从弹出的文件对话框中选择一个可执行文件。

最后,如果您愿意,可以输入注释并单击“添加”将命令添加到启动列表中。

现在您已经清理了启动应用程序列表,您可能想要它自动清空垃圾箱释放存储空间或隐藏顶部栏以释放屏幕空间.