当前位置: 首页>>技术教程>>正文


如何提高启动速度?

, , ,

问题描述

我见过许多让Ubuntu更快的视频,但这些方法只会让桌面性能更快。

我希望让我的电脑启动更快。他们可以做些什么来让Ubuntu启动速度更快?

最佳解决思路

通常,启动时加载的程序越少,系统应该越快。尝试BUM(从软件中心)禁用一些不需要的服务,并确保您没有安装任何不必要的程序,这些程序将在启动时加载。最后,使用固态驱动器(SSD)作为启动设备应该可以显著提高启动时间。

哦,还有一件事,你的文件系统类型也有所不同。 EXT4遭遇了一些性能回归(根据phoronix),但我仍然发现EXT4非常适合快速启动。

次佳解决思路

前几天我才碰到这个。其”e4rat” Instructions Here

这个小应用程序很棒。

我采用了一台过时的单处理器AMD sempron,运行速度为2800+,正常率为1.45分钟至27.885秒。

我有boot-charts来证明这一点。这很疯狂!

boot,startup,performance,ubuntu

第三种解决思路

从磁力驱动器切换到固态驱动器,或磁性和放大器。固态混合驱动器。这将使任何操作系统启动速度更快。混合动力驱动器并不是那么昂贵。如果你不想走那么远,那么只需要一个7200或10K RPM的硬盘。

第四种思路

改进启动时间与禁用/管理服务密切相关,但当前的答案缺少使用systemd禁用服务的详细信息。

什么是systemd?

简而言之,systemd是Linux的系统和服务管理器,与SysV和LSB init脚本兼容。有关这方面的更多信息,请参阅official project page

检查哪些服务占用大部分时间

使用以下命令检查哪些服务占用大部分时间

systemd-analyze blame

在引导期间禁用auto-start服务

如果要在引导期间禁用服务的auto-starting,可以使用以下命令

sudo systemctl disable some-time-eater-service.service --now

但是,您可能希望查看哪些其他服务需要该服务。要检查使用以下命令

systemctl list-dependencies some-time-eater-service.service --reverse

注意:将some-time-eater-service.service替换为实际服务名称,如postgresql@9.5-main.service

请注意,禁用auto-start不会使服务non-startable。当需求出现时,可以在引导后启动该服务。如果要完全禁用它,请阅读下一节

完全禁用服务。

如果要完全禁用服务以使其无法启动,则应使用mask而不是禁用。像这样

sudo systemctl mask <SERVICE-NAME>

<SERVICE-NAME>替换为服务的实际名称

maskdisable之间的区别是掩码使服务完全禁用,你无法启动它。您必须使用unmask以systemd启动它(您仍然可以从service开始)。但是disable只是禁用了服务的auto-start,你可以稍后启动它。

例如,在屏蔽我的postgresql@9.5-main.service服务之后,当我想用​​systemctl启动它时,会显示以下消息

Failed to start postgresql@9.5-main.service: Unit postgresql@9.5-main.service is masked.

GUI工具

我特别感兴趣的一个GUI工具是systemd-manager,它仍处于开发阶段,尚未成为官方Ubuntu存储库的路径。但是,您可以从Systemd-Manager’s github page轻松安装它。这些版本包含一个.deb软件包,它非常易于安装。你需要GTK-3.16或更高版本。

下载并安装后,可以使用systemd-manager命令启动它。启动它。

该应用程序有两个主要观点。一个是Systemd Units,另一个是Systemd Analyze。您可以使用top-left角中的标签进行切换。查看截图。

boot,startup,performance,ubuntu

您可以管理三种类型的单位。服务,套接字和定时器。你可以在它们之间切换。查看截图。

boot,startup,performance,ubuntu

显示信息

三个主要选项卡是Files,Journal,Dependencies。

  • 文件是所选单元的配置文件。

  • Journal是启用/禁用/启动/停止单元时的实时systemd输出

  • 依赖关系显示必须启用其他服务或单元才能启动所选服务。

状态指标

单位名称旁边有两列表示状态。左边一个表示该单元是否在启动时启动,右边一个指示该单元当前是否正在运行。在图片中看到它们。

boot,startup,performance,ubuntu

boot,startup,performance,ubuntu

控制开关

要设置enabled-at-boot或运行状态,top-right角落有两个toogle按钮。启用表示设备将启动并启动。在图片中看到它们。

boot,startup,performance,ubuntu

应用程序的完整视图如下所示

boot,startup,performance,ubuntu

希望这会有所帮助。我从其他关于systemd的答案中受益,但确实需要在一个地方收集信息。

更多信息:

要了解有关systemd的更多信息,请访问以下链接:

其他答案有不同的建议。包括购买SSD,增加RAM等。如果你能负担得起,那些肯定会有所帮助,尤其是SSD的建议。

第五种思路

我假设你在谈论Ubuntu 11.04?我一直在尝试这个很长一段时间,没有多少成功。无论如何,这些步骤产生了几秒钟的差异:

1.删​​除不需要的包

apt-get purge brltty brltty-x11 foo2zjs min12xxw ttf-indic-fonts-core ttf-kacst-one ttf-khmeros-core ttf-lao ttf-punjabi-fonts ttf-unfonts-core

2.在引导过程中使用两个内核/CPU

只有你确定你的计算机有多个CPU /核心!打开/etc/init.d/rc(您需要root权限)并用CONCURRENCY=shell替换CONCURRENCY=none。然后保存文件。

Update

“CONCURRENCY=shell is now obsolete and is aliased to ‘makefile’. Since 2010-05-14 the default has been ‘makefile’.”   ~Jonathon

3.禁用不需要的守护进程

这有点先进,所以如果你不知道这意味着什么,最好不要这样做。安装bum,并以root权限启动它。然后解开你确定不需要的守护进程前面的方框。例如,当您没有扫描仪时,可以禁用saned。如果你从不使用蓝牙,你也可以禁用bluetooth。完成后,点击“应用”按钮,然后单击“是”或“否”(无关紧要)。

完成这些步骤后,重新启动两次。由于某些原因,在更改所有这些选项后首次重新启动所需的时间比其他选项要长得多,但在第二次重启期间您应该注意到一些差异。

第六种思路

使用bootchart生成启动过程需要时间的详细图表。它可能有助于决定调整或删除的内容。来自https://wiki.ubuntu.com/BootCharting

  • 通过apt-get或Synaptic安装bootchart和pybootchartgui软件包

  • 重新启动计算机

  • 引导图在/var /log /bootchart中作为.png文件

第七种思路

如果我进行了备用安装并手动添加了GUI软件包,那么我的机器启动速度会更快。当然,它只是删除我不需要的东西,我能够添加自己。如果您打算回来“如何编译/安装X,Y和Z应用程序”,这可能不是一个好主意。

第八种思路

用SSD替换你的硬盘可能是唯一实用的方法。例:

http://www.engadget.com/2011/08/17/samsungs-6gbps-ssd-gets-a-consumer-label-october-ship-date/

时间听起来有点过分,但你还没有发布任何细节。

第九种思路

对于其他正在努力解决此问题的人,只需安装BUM并以root用户身份启动它(小心使用gksudo而不是普通的sudo)。然后un-check你要禁用的服务(我禁用Apache2,PostGreSQL守护进程,MySQL,虚拟框等)就是这样!您可以完全删除该服务,如果您不希望它在那里,但禁用它是绰绰有余的。

sudo apt-get install bum

boot,startup,performance,ubuntu

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/1241.html,未经允许,请勿转载。