TransWikia.com

Ubuntu 20.04.1 Slow (1 minute) Boot With Samsung 850 EVO SSD

Ask Ubuntu Asked by geast on December 16, 2020

NOTE: Possible cause is described at the very end.

This is a clean install of 20.04.1 with no 3rd party packages on an old x58 (SATA II) system with no UEFI option. I initially created 1 OS 25GB partition and 1 Home partition with flags. Reinstalling with default partitions results in no change. No USB devices are attached aside from the keyboard and mouse. 18.04.4 was previously installed with a <10 second boot.

It takes 50 to 1:10:95 seconds as measured with a phone from the end of BIOS, to a purple GRUB screen, then the login screen. The bulk of the time (at least 50 seconds) is spent on the purple GRUB screen. An old Mushkin SSD using the same SATA cables with a clean 20.04.1 install boots in 8 seconds. SMART short, long, and fsck scans on the Samsung 850 SSD via a LiveUSB show no errors. I’ve long formatted the Samsung with EXT4 several times and updated the firmware. Benchmarks show 284.2 and 285.4 MB/s average read rate in 2 tests for the Samsung, which seems fine for SATA II.

$ inxi -Fxz
System:
  Kernel: 5.4.0-54-generic x86_64 bits: 64 compiler: gcc v: 9.3.0 
  Desktop: Gnome 3.36.3 Distro: Ubuntu 20.04.1 LTS (Focal Fossa) 
Machine:
  Type: Desktop Mobo: Gigabyte model: EX58-UD3R BIOS: Award 
  v: Fk2 date: 09/27/2011 
CPU:
  Topology: 6-Core model: Intel Xeon X5675 bits: 64 type: MT MCP 
  arch: Nehalem rev: 2 L2 cache: 12.0 MiB 
  flags: lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 73548 
  Speed: 1877 MHz min/max: 1596/3060 MHz Core speeds (MHz): 1: 1599 2: 1617 
  3: 1636 4: 1690 5: 1635 6: 1635 7: 1604 8: 1633 9: 1659 10: 1621 11: 1691 
  12: 1692 
Graphics:
  Device-1: NVIDIA GK208B [GeForce GT 710] vendor: eVga.com. driver: nouveau 
  v: kernel bus ID: 01:00.0 
  Device-2: NVIDIA GP106 [GeForce GTX 1060 6GB] vendor: eVga.com. 
  driver: nouveau v: kernel bus ID: 02:00.0 
  Display: x11 server: X.Org 1.20.8 driver: nouveau 
  resolution: 1680x1050~60Hz, 1680x1050~60Hz 
  OpenGL: renderer: NV106 v: 4.3 Mesa 20.0.8 direct render: Yes 
Audio:
  Device-1: Intel 82801JI HD Audio vendor: Gigabyte GA-EP45-UD3R 
  driver: snd_hda_intel v: kernel bus ID: 00:1b.0 
  Device-2: NVIDIA GK208 HDMI/DP Audio vendor: eVga.com. 
  driver: snd_hda_intel v: kernel bus ID: 01:00.1 
  Device-3: NVIDIA GP106 High Definition Audio vendor: eVga.com. 
  driver: snd_hda_intel v: kernel bus ID: 02:00.1 
  Sound Server: ALSA v: k5.4.0-54-generic 
Network:
  Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet 
  vendor: Gigabyte driver: r8169 v: kernel port: ce00 bus ID: 05:00.0 
  IF: enp5s0 state: up speed: 1000 Mbps duplex: full mac: <filter> 
Drives:
  Local Storage: total: 232.89 GiB used: 7.50 GiB (3.2%) 
  ID-1: /dev/sda vendor: Samsung model: SSD 850 EVO 250GB size: 232.89 GiB 
Partition:
  ID-1: / size: 227.74 GiB used: 7.50 GiB (3.3%) fs: ext4 dev: /dev/sda5 
Sensors:
  System Temperatures: cpu: 21.0 C mobo: N/A 
  Fan Speeds (RPM): N/A 
  GPU: device: nouveau temp: 37 C fan: 0 device: nouveau temp: 32 C 
Info:
  Processes: 303 Uptime: 2m Memory: 15.63 GiB used: 931.5 MiB (5.8%) 
  Init: systemd runlevel: 5 Compilers: gcc: N/A Shell: bash v: 5.0.17 
  inxi: 3.0.38 

Other things I’ve tried:

systemd-analyze blame showed 12.332s apt-daily.service as the worst offender, so I added the below to /etc/systemd/system/apt-daily.timer

# apt-daily timer configuration override
[Timer]
OnBootSec=5min
OnUnitActiveSec=1d
AccuracySec=1h
RandomizedDelaySec=7min

After this, systemd-analyze blame showed 4.912s NetworkManager-wait-online.service and 4.604s plymouth-quit-wait.service

Next steps: sudo systemctl disable NetworkManager-wait-online.service, removed splash from /etc/default/grub, and updated GRUB: sudo update-grub

Removing splash was significant, but nothing resulted in faster booting. Continuing on, I found that Quick Boot wasn’t enabled in BIOS, so that was enabled. fsck appeared to be running before the login screen on each boot. I then added fsck.mode=skip to GRUB_CMDLINE_LINUX_DEFAULT=

Used other 5.4 or 5.8 kernels, added nomodeset or noresume to GRUB, and changed the SATA port from 1 to 0 then reinstalled. Installing Linux Mint 20 has the same problem with a 1:08:58 second boot.

Updating, including the microcode, does nothing.

Commented out quiet splash via GRUB results in the usual loading messages after the same purple screen delay.

Removed plymouth.

Pressing ESC on the purple GRUB screen does nothing unless quiet splash is removed. Booting then hangs until loading messages appear.

A clean 18.04.4 reinstall after all of this again gives a <10 second boot.

Added noatime option to mounts in /etc/fstab

Verified that UUIDs match by comparing blkid to /etc/fstab

Uncommented and changed DefaultTimeoutStartSec=90s to 10s in /etc/systemd/system.conf

Checked /var/log/boot.log

Put the Samsung 850 EVO SSD into another system with legacy mode BIOS enabled (also has a UEFI option). I did not reinstall 20.04 on the SSD when in the new system, I simply plugged it into the new system. It booted in 8 seconds.

Possible cause:

Installed 18.04.4 alongside 20.04 to get GRUB v2.02 (20.04 has v2.04).
sudo update-grub then found the other OS install (source). Booting into 20.04 resulted in the familiar hang on the purple GRUB screen, then a fsck message. Even if fsck.mode=skip is added to the DEFAULT line of GRUB (before or after quiet splash), fsck runs on every boot, taking 50 seconds from the GRUB selection screen to the login screen. Pressing CTRL+C does nothing. This post seems to describe the same problem.

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP