在本文中,您将学习查找Linux系统引导所需的时间,以及如何在引导缓慢的情况下减少时间。 注意事项: 本文讨论的过程已在Ubuntu 20.04 LTS上进行了测试。可以在任何启用systemd的Linux发行版中执行相同的过程。 要打开命令行终端,请使用Ctrl + Alt + T键盘快捷键。 Systemd-analyze是可用于了解系统上次启动统计信息的工具。使用systemd-analyze工具,您可以找到有关系统启动所需时间以及每个单元启动所需时间的信息。幸运的是,您无需安装此工具,因为它是内置的systemd工具。您可以在终端中使用以下命令进行验证: $ which systems-analyze 输出将显示可执行命令的完整路径。 查找系统启动所需时间 要想知道系统启动所需的时间,只需在终端中输入system-analyze,不需要任何命令行参数。 $ systemd -analyze 当你执行上述命令时,systemd-analyze工具会计算出系统直到启动完成所需的时间,并将其细分为内核和用户空间。 从上面的命令输出中可以看到,我系统的总启动时间为32.378秒,具体分为: Kernel: 6.074s Userspace: 26.304s 查看/解决开机慢的问题 如果开机时间较长,你需要找到是哪个服务拖慢了开机进程。你可以使用systemd-analyze blame命令找到它。这个命令列出了所有在启动时间启动的服务以及它们所花费的时间。通过这些信息,你可以优化系统的启动时间。 在Terminal中发出以下命令,以找到导致开机速度慢的服务。 $ sudo systemd-analyze blame 该命令列出了在启动时启动的服务,以及每个服务的初始化时间。列表是按照经过时间的长短,按降序排列的。 责备列表可能会相当长,通常情况下,前10个条目就足以找到高度耗时的服务。因此,将上述命令的输出管到 "head "命令中,如下所示。 $ sudo systemd-analyze blame | head 你也可以以树状的形式打印出时间关键事件链的输出。在Terminal中执行以下命令来实现。 $ systemd-analyze critical-chain 在输出中,你会看到一个事件链,按照时间(服务成为活动状态的时间)降序排列。每个事件中"@"字符后面的值是服务开始活动的时间。而每个单位中 "+"字符后面的值则显示服务启动的时间。 从以上命令的输出中,你可以很容易地找出哪些服务需要更长的启动时间,进而导致系统启动缓慢。从顶部开始,禁用那些启动时间较长的服务,只要它们不需要在启动时启动。此外,禁用所有的服务,虽然需要较少的时间,但不需要在启动时,因为他们也会影响系统启动时间。 为了禁用任何服务,请使用以下命令: $ sudo systemctl disable service-name 以上就是全部内容了! 在这篇文章中,你已经学会了如何使用systemd内置工具来找出系统启动所需的时间。如果开机时间较长,你也可以找到那些服务,并禁用它们来改善开机时间。不过要注意的是,有些默认的服务是需要在开机时启动的,所以不建议在不了解任何服务的实际作用的情况下就禁用它,否则可能会惹来麻烦。A5互联https://www.a5idc.net/