I changed the default kernel from 6.6.2-1 to 6.1.63-1, and the problem went away. I.e., after I applied the latest update (2023-12-01), the first boot went normally and so did all subsequent boots so far.
For anybody trying to do the same, this is what I did (the “linux-aarhus” method).
- Confirm that
/etc/default/grub
has these two lines (separated by other lines)
GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true
This is per How to make a Kernel default? - #3 by linux-aarhus
-
While the machine is booting, press Esc
-
See this menu (with Green letters)
Manjaro
Manjaro Linux
Advanced Options for Manjaro Linux
Memory Tester (memtest86+)
Note at this point that some clicking of Esc gave me quite a different menu (which was in gray scale and included “Hard drive”). If you get to this wrong screen, press Esc to get out of it. The screen will turn black again (to continue booting). Press Esc again, and you will probably get to the right menu (in Green letters).
-
Choose “Advanced Options for Manjaro Linux”
-
See this menu (yours may look different)
Manjaro Linux (Kernel: 6.6.2-1-MANJARO)
Manjaro Linux (Kernel: 6.6.2-1-MANJARO)
Manjaro Linux (Kernel: 6.1.63-1-MANJAR)
Manjaro Linux (Kernel: 6.1.63-1-MANJAR)
See that there is doubling of each kernel. Also I believe the far right ends may have been cut off.
- Choose the 2nd item from the bottom, i.e. the top one of the two 6.1.63-1 items.
- See machine boot > see that it has loaded 6.1.63-1
- Restart machine > see that it has loaded 6.1.63-1, i.e. that the last chosen kernel has become the new default.
There is an alternative method to linux-aarhus, this from aragorn, found here:
With that I had trouble. After I edit the grub file, ran sudo update-grub
, and restarted, the machine went into memory test. (This may not happen immediately, but at some point down the line). Once that happens, every reboot took me into memory test. I never chose memory test from the menu. Because I am working with a virtual machine, I can easily restore myself to an earlier state and repeat the experiment. This obligatory memory test began happening after several restorations. (After one restoration, I believe I never went into the “Esc during boot” menu. All I did was to edit the grub file, and I began getting memory test.)
Conclusion: For the time being, I can avoid this “hanging after an update” issue by using an older kernel per the linux-aarhus method.
Questions:
- What is the downside of using an older kernel? For example, will updated packages start not working with an older kernel at some point so that I get stuck with older versions of packages?
- As stated in the original post, I can use the new kernel if I apply the “let hang for 10 minutes” trick. Anybody has insight as to how that could make the problem go away (i.e. cause subsequent boots go normal)?
ADDED LATER:
Now that I have made kernel 6.1.63-1 default and done the 2023-12-01 update to several VMs, I noticed that, when I go in that order (i.e. set default kernel and then update), the default kernel after the update may be one of:
- 6.1.64-1
- 6.6.3-1
That is, the updating may change default kernel from 6.1 back to 6.6. If that happens, you’d just have to do the “making 6.1 default” sequence again.