如何让 ubuntu 启动更快

如何让 ubuntu 启动更快

我正在运行 21.10,启动速度非常慢。我该怎么做才能加快速度?以下是 systemd-analyze 的一些输出

# systemd-analyze time
Startup finished in 4.592s (kernel) + 2min 52.922s (userspace) = 2min 57.515s 
graphical.target reached after 2min 52.311s in userspace

# systemd-analyze critical-chain
The time when unit became active or started is printed after the "@" character.
The time the unit took to start is printed after the "+" character.

graphical.target @2min 52.311s
└─multi-user.target @2min 52.311s
  └─plymouth-quit-wait.service @1min 743ms +1min 51.566s
    └─systemd-user-sessions.service @1min 338ms +214ms
      └─network.target @1min 51ms
        └─wpa_supplicant.service @51.897s +8.153s
          └─dbus.service @49.103s
            └─basic.target @49.073s
              └─sockets.target @49.072s
                └─cups.socket @58.292s
                  └─sysinit.target @48.963s
                    └─snapd.apparmor.service @47.673s +1.289s
                      └─apparmor.service @45.304s +2.366s
                        └─local-fs.target @45.302s
                          └─boot.mount @45.266s +34ms
                            └─systemd-fsck@dev-disk-by\x2duuid-5dff6fb3\x2d361f\x2d4666\x2d9462\x2d45f78a65ab47.service @45.001s +24>
                              └─dev-disk-by\x2duuid-5dff6fb3\x2d361f\x2d4666\x2d9462\x2d45f78a65ab47.device @44.999s

# systemd-analyze blame
1min 51.566s plymouth-quit-wait.service
 1min 9.365s man-db.service
     35.323s dev-sda3.device
     31.737s logrotate.service
     27.427s snapd.service
     25.519s networkd-dispatcher.service
     19.326s cups.service
     18.091s apt-daily.service
     17.520s systemd-journal-flush.service
     17.516s udisks2.service
     15.157s ModemManager.service
     12.620s NetworkManager-wait-online.service
     12.069s dev-loop14.device
     11.440s dev-loop11.device
     11.230s dev-loop26.device
     11.224s dev-loop3.device
     10.977s dev-loop20.device
     10.877s NetworkManager.service
     10.877s avahi-daemon.service
     10.803s dev-loop16.device
     10.717s dev-loop9.device
     10.694s dev-loop22.device
     10.584s dev-loop25.device
     10.550s polkit.service
     10.415s accounts-daemon.service
     10.317s dev-loop27.device
     10.101s dev-loop18.device
      9.976s dev-loop2.device
      9.830s dev-loop13.device
      9.816s dev-loop24.device
      9.720s dev-loop23.device
      9.665s power-profiles-daemon.service
      9.451s dev-loop21.device
      9.429s dev-loop15.device
      9.224s dev-loop19.device
      8.392s dev-loop12.device
      8.299s dev-loop10.device
      8.202s switcheroo-control.service
      8.169s dev-loop17.device
      8.153s wpa_supplicant.service
      8.091s thermald.service
      8.084s systemd-logind.service
      7.972s snapd.seeded.service
      7.845s dev-loop4.device
      7.192s dev-loop8.device
      5.923s gdm.service
      5.645s dev-loop6.device
      5.556s dev-loop1.device
      5.166s dev-loop7.device

有任何想法吗?

编辑1:一些系统信息。

它有 4 个核心。

vendor_id   : AuthenticAMD
cpu family  : 21
model       : 16
model name  : AMD A8-5500 APU with Radeon(tm) HD Graphics
stepping    : 1
microcode   : 0x6001119
cpu MHz     : 1406.533
cache size  : 2048 KB

12 GB 内存。

系统中有一个SSD磁盘。

/etc/fstab

# / was on /dev/sda3 during installation
UUID=1987d431-8f81-442f-8fc1-821fc4a1283a /               ext4    errors=remount-ro 0       1
# /boot was on /dev/sda1 during installation
UUID=5dff6fb3-361f-4666-9462-45f78a65ab47 /boot           ext4    defaults        0       2
# swap was on /dev/sda5 during installation
UUID=a4a87e3f-9f91-40bb-baa1-3bc7b11d1f1c none            swap    sw              0       0

fdisk -l(跳过 /dev/loop1 ... /dev/loop30)

disk /dev/sda: 298,09 GiB, 320072933376 byte, 625142448 sektorer
Disk model: WDC WD3200BEVT-2
Enheter: sektorer av 1 * 512 = 512 byte
Sektorstorlek (logisk/fysisk): 512 byte / 512 byte
I/O-storlek (minsta/optimal): 512 byte / 512 byte
Disketikettstyp: dos
Diskidentifierare: 0x64a92ab6

Enhet      Start   Början    Slutet  Sektorer Storlek Id Typ
/dev/sda1  *         2048   1953791   1951744    953M 83 Linux
/dev/sda2         1955838  17577983  15622146    7,4G  5 Utökad
/dev/sda3        17577984 625141759 607563776  289,7G 83 Linux
/dev/sda5         1955840  17577983  15622144    7,4G 82 Linux växling / Solaris

Poster i partitionstabell är inte i diskordning.

这是 blkid

/dev/sda5: UUID="a4a87e3f-9f91-40bb-baa1-3bc7b11d1f1c" TYPE="swap" PARTUUID="64a92ab6-05"
/dev/sda3: UUID="1987d431-8f81-442f-8fc1-821fc4a1283a" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="64a92ab6-03"
/dev/loop0: TYPE="squashfs"
/dev/loop1: TYPE="squashfs"
/dev/loop2: TYPE="squashfs"
/dev/loop3: TYPE="squashfs"
/dev/loop4: TYPE="squashfs"
/dev/loop5: TYPE="squashfs"
/dev/loop6: TYPE="squashfs"
/dev/loop7: TYPE="squashfs"
/dev/sda1: UUID="5dff6fb3-361f-4666-9462-45f78a65ab47" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="64a92ab6-01"

答案1

首先,让我们检查您的文件系统。

  • 以“试用 Ubuntu”模式启动 Ubuntu Live DVD/USB
  • terminalCtrl+ Alt+打开窗口T
  • 类型sudo fdisk -l
  • 识别“Linux 文件系统”的 /dev/sdXX 设备名称
  • 输入sudo fsck -f /dev/sda3,替换sdXX为您之前找到的数字
  • 输入sudo fsck -f /dev/sda1,替换sdXX为您之前找到的数字
  • fsck如果有错误则重复命令
  • 类型reboot

审查

显示cat /etc/fstabsudo blkid和和应用程序sudo fdisk -l的屏幕截图Disks智能数据与测试数据窗口(调整此窗口的大小以捕获所有数据)。

我已检查过上述内容,但没有得到所要求的 SMART 数据屏幕截图。

笔记:如果我能获得 SMART 数据,我可能会提出进一步的建议。

笔记:该系统上没有 SSD。

有很多地方是错误的。下面的摘录和评论将详细说明这些问题。


内存

model name  : AMD A8-5500 APU with Radeon(tm) HD Graphics
12 GB ram

AMD 处理器对 RAM 非常挑剔。

对于 12G RAM,您必须拥有 8G 和 4G DIMMS,因此您的系统无法利用相同大小/规格 DIMMS 的速度优势,并且不会使用内存交错。

https://www.memtest86.com/并免费下载/运行它们memtest来测试你的记忆力。至少完成一次所有 4/4 测试以确认记忆力良好。这可能需要几个小时才能完成。


/etc/fstab

# /boot was on /dev/sda1 during installation
UUID=5dff6fb3-361f-4666-9462-45f78a65ab47 /boot           ext4    defaults        0       2

您会在 systemd-analyze 命令输出中注意到相同的 UUID。

这应该是:

# /boot was on /dev/sda1 during installation
UUID=5dff6fb3-361f-4666-9462-45f78a65ab47 /boot           vfat    defaults        0       1

ext4 应该是 vfat。fsck 测试应该是 1,而不是 2。

但您不能只在 fstab 中更改这一点。稍后将详细介绍。


fdisk -l(跳过 /dev/loop1 ... /dev/loop30)

每个 SNAP 应用程序都会减慢启动速度。尽可能删除 SNAP 应用程序,并更改为常规 .deb/repo 应用程序以加快速度。

Disketikettstyp: dos

如果你有一台UEFI计算机,那么dos应该是GPT分区表。

Enhet      Start   Början    Slutet  Sektorer Storlek Id Typ
/dev/sda1  *         2048   1953791   1951744    953M 83 Linux

Poster i partitionstabell är inte i diskordning

与我之前提到的分区相同,但分区顺序不正确。这也会影响启动时间。

概括

  • 备份重要数据
  • 放置一个新的 GPT 分区表(这将擦除磁盘), 使用gparted
  • 全新安装 Ubuntu
  • 接受安装程序的默认分区计划
  • 重新安装应用程序和数据。如果可能的话最好不要使用 SNAP 应用程序。
  • 如果可能,请将 4G DIMM 更改为匹配的 8G DIMM

答案2

安装磁盘花费的时间太长了。

查看:

  • 时间系统时钟正确(即不是很久以前或将来的时间,并且您的 RTC 电池正在工作)
  • 检查日志(例如 dmesg、/var/log/kern.log、/var/log/syslog)中是否存在 /dev/sda 中的错误。您的磁盘可能已损坏,或者电缆可能松动。
  • 运行sudo tune2fs -l /dev/sda3(并针对所有分区)并检查“最大挂载数:”(每 N 次挂载运行一次 fsck)和“检查间隔:”(自上次检查后 N 天运行 fsck)。您的分区可能配置错误,导致每次启动时都运行 fsck。您可以使用以下方法调整这些值tune2fs
  • 运行完整的 fsck 扫描(备用指导

也许您的磁盘可以通过完全擦除来做一些维护(如果它是 SSD)。一些 SSD 在经过足够多的写入周期后会变得非常糟糕,而 TRIM 维护不够(或者 TRIM 本身耗时太长)。

但正如 Matthias Lenmher 所说,没有规格就很难了解更多信息。

更新

我看到您发布了硬盘信息。根据互联网,WD3200BEVT 是笔记本电脑的常规硬盘。您的磁盘可能碎片太多和/或空间过大。最好的做法是完全格式化并重新安装(或用 SSD 替换它...)

但为了安全起见,请发布完整的输出sudo smartctl -a /dev/sda。笔记本电脑硬盘受到影响并出现大量启动错误或读/写错误的情况太常见了。

相关内容