I recently installed Ubuntu 20.04 Server on a machine, and while using it, I have been regularly using sudo apt update && sudo apt upgrade
. It seems somewhere along the way, those commands upgraded my kernel to 5.4.0-107-generic
and made it the default. That should be fine and good (I think?), but now the server fails to boot normally. When connecting a screen, the boot sequence get stuck on Failed to start Device-Mapper Multipath Device Controller
. Using journalctl
, I have recovered the last few lines of the boot log that seems relevant here:
Apr 07 02:38:48 rum systemd[1]: Starting Device-Mapper Multipath Device Controller...
Apr 07 02:39:46 rum kernel: snd_hda_intel 0000:00:1f.3: couldn't bind with audio component
Apr 07 02:39:49 rum kernel: snd_hda_intel 0000:00:1f.3: azx_get_response timeout, switching to polling mode: last cmd=0x000f0000
Apr 07 02:39:50 rum kernel: snd_hda_intel 0000:00:1f.3: No response from codec, disabling MSI: last cmd=0x000f0000
Apr 07 02:39:51 rum kernel: snd_hda_intel 0000:00:1f.3: Codec #0 probe error; disabling it...
Apr 07 02:39:51 rum kernel: snd_hda_codec_hdmi hdaudioC0D2: No i915 binding for Intel HDMI/DP codec
Apr 07 02:39:51 rum kernel: hdaudio hdaudioC0D2: Unable to bind the codec
Apr 07 02:40:18 rum systemd[1]: multipathd.service: start-pre operation timed out. Terminating.
Apr 07 02:41:48 rum systemd[1]: multipathd.service: State 'stop-sigterm' timed out. Killing.
Apr 07 02:41:48 rum systemd[1]: multipathd.service: Killing process 927 (modprobe) with signal SIGKILL.
Apr 07 02:43:18 rum systemd[1]: multipathd.service: Processes still around after SIGKILL. Ignoring.
Apr 07 02:44:48 rum systemd[1]: multipathd.service: State 'stop-final-sigterm' timed out. Killing.
Apr 07 02:44:48 rum systemd[1]: multipathd.service: Killing process 927 (modprobe) with signal SIGKILL.
Apr 07 02:44:48 rum systemd[1]: multipathd.service: Failed with result 'timeout'.
Apr 07 02:44:48 rum systemd[1]: Failed to start Device-Mapper Multipath Device Controller.
Apr 07 02:44:48 rum systemd[1]: multipathd.service: Found left-over process 927 (modprobe) in control group while starting unit. Ignoring.
Apr 07 02:44:48 rum systemd[1]: This usually indicates unclean termination of a previous run, or service implementation deficiencies.
Apr 07 02:44:48 rum systemd[1]: Starting Device-Mapper Multipath Device Controller...
Apr 07 02:46:19 rum systemd[1]: multipathd.service: start-pre operation timed out. Terminating.
Apr 07 02:47:49 rum systemd[1]: multipathd.service: State 'stop-sigterm' timed out. Killing.
Apr 07 02:47:49 rum systemd[1]: multipathd.service: Killing process 935 (modprobe) with signal SIGKILL.
Apr 07 02:47:49 rum systemd[1]: multipathd.service: Killing process 927 (modprobe) with signal SIGKILL.
Apr 07 02:49:19 rum systemd[1]: multipathd.service: Processes still around after SIGKILL. Ignoring.
Apr 07 02:50:49 rum systemd[1]: multipathd.service: State 'stop-final-sigterm' timed out. Killing.
Apr 07 02:50:49 rum systemd[1]: multipathd.service: Killing process 927 (modprobe) with signal SIGKILL.
Apr 07 02:50:49 rum systemd[1]: multipathd.service: Killing process 935 (modprobe) with signal SIGKILL.
Apr 07 02:50:49 rum systemd[1]: multipathd.service: Failed with result 'timeout'.
Apr 07 02:50:49 rum systemd[1]: Failed to start Device-Mapper Multipath Device Controller.
Apr 07 02:50:49 rum systemd[1]: multipathd.service: Found left-over process 927 (modprobe) in control group while starting unit. Ignoring.
Apr 07 02:50:49 rum systemd[1]: This usually indicates unclean termination of a previous run, or service implementation deficiencies.
Apr 07 02:50:49 rum systemd[1]: multipathd.service: Found left-over process 935 (modprobe) in control group while starting unit. Ignoring.
Apr 07 02:50:49 rum systemd[1]: This usually indicates unclean termination of a previous run, or service implementation deficiencies.
Apr 07 02:50:49 rum systemd[1]: Starting Device-Mapper Multipath Device Controller...
Apr 07 02:52:20 rum systemd[1]: multipathd.service: start-pre operation timed out. Terminating.
Thankfully, I am still able to boot using 5.4.0-104-generic
, but running sudo apt update && sudo apt upgrade
followed by sudo apt autoremove
did nothing to repair 5.4.0-107-generic
.
What can I do to resolve this situation? Maybe I could uninstall the more recent kernels present on the machine, e.g. 5.4.0-105-generic
(also fails to boot) and 5.4.0-107-generic
? Some other info I was able to gather elsewhere also suggests checking /boot/initrd.img
-- can I somehow just rebuild these files for the more recent kernels?
sudo apt update && sudo apt upgrade
has the potential to set an incompatible kernel as default?What could I do if I am completely unable to boot after
sudo apt autoremove
has removed all compatible kernels?As it stands, if I want to make my machine able to boot through normal means I should uninstall the kernels that do not work, is that correct?