Can't boot from non-encrypted disk

My laptop has one HDD and one SSD storage drive. I have an installed system on the HDD drive.
Today I installed a new Manjaro on the SSD with encryption.
From now I can’t boot from the HDD. I got this message: “kernel must load first” or something that is similar…
How can I boot from the HDD?

:arrow_down: Boot into a live ISO and post:

inxi -Fazy
sudo parted -l
sudo blkid

Then try to manjaro-chroot into your system and within chroot environment post output of:

test -d /sys/firmware/efi && echo efi || echo bios
sudo efibootmgr -v

Thanks for the information.
Here are the symptoms:
My laptop has one HDD and one SSD storage drive. I have an installed system on the HDD drive.
Today I installed a new Manjaro on the SSD with encryption.
From now I can’t boot from the HDD. I got this message: “kernel must load first” or something that is similar…
That happens when I start the machine.
Thanks in advance to the further helps.

inxi -Fazy
System:
  Kernel: 5.10.30-1-MANJARO x86_64 bits: 64 compiler: gcc v: 10.2.0 
  parameters: BOOT_IMAGE=/boot/vmlinuz-x86_64 lang=en_US keytable=us tz=UTC 
  misobasedir=manjaro misolabel=MANJARO_CINNAMON_2102 quiet 
  systemd.show_status=1 apparmor=1 security=apparmor driver=free 
  nouveau.modeset=1 i915.modeset=1 radeon.modeset=1 
  Desktop: Cinnamon 4.8.6 tk: GTK 3.24.28 vt: 7 dm: LightDM 1.30.0 
  Distro: Manjaro Linux base: Arch Linux 
Machine:
  Type: Laptop System: Micro-Star product: GF63 Thin 10SCXR v: REV:1.0 
  serial: <filter> Chassis: type: 10 serial: <filter> 
  Mobo: Micro-Star model: MS-16R4 v: REV:1.0 serial: <filter> 
  UEFI: American Megatrends v: E16R4IMS.105 date: 04/17/2020 
Battery:
  ID-1: BAT1 charge: 45.6 Wh (91.2%) condition: 50.0/51.3 Wh (97.5%) 
  volts: 12.5 min: 11.4 model: MSI Corp. MS-16R4 type: Li-ion serial: N/A 
  status: Unknown 
CPU:
  Info: 6-Core model: Intel Core i7-10750H bits: 64 type: MT MCP 
  arch: Comet Lake family: 6 model-id: A5 (165) stepping: 2 microcode: E0 
  cache: L2: 12 MiB 
  flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx 
  bogomips: 62399 
  Speed: 800 MHz min/max: 800/5000 MHz Core speeds (MHz): 1: 800 2: 800 3: 800 
  4: 800 5: 800 6: 800 7: 800 8: 800 9: 800 10: 800 11: 800 12: 800 
  Vulnerabilities: Type: itlb_multihit status: KVM: VMX disabled 
  Type: l1tf status: Not affected 
  Type: mds status: Not affected 
  Type: meltdown status: Not affected 
  Type: spec_store_bypass 
  mitigation: Speculative Store Bypass disabled via prctl and seccomp 
  Type: spectre_v1 
  mitigation: usercopy/swapgs barriers and __user pointer sanitization 
  Type: spectre_v2 mitigation: Enhanced IBRS, IBPB: conditional, RSB filling 
  Type: srbds status: Not affected 
  Type: tsx_async_abort status: Not affected 
Graphics:
  Device-1: Intel UHD Graphics vendor: Micro-Star MSI driver: i915 v: kernel 
  bus-ID: 00:02.0 chip-ID: 8086:9bc4 class-ID: 0300 
  Device-2: NVIDIA TU117M vendor: Micro-Star MSI driver: nouveau v: kernel 
  bus-ID: 01:00.0 chip-ID: 10de:1f99 class-ID: 0302 
  Display: x11 server: X.Org 1.20.11 driver: loaded: intel,modesetting,nouveau 
  alternate: fbdev,nv,vesa display-ID: :0 screens: 1 
  Screen-1: 0 s-res: 3840x1200 s-dpi: 96 s-size: 1016x318mm (40.0x12.5") 
  s-diag: 1065mm (41.9") 
  Monitor-1: eDP1 res: 1920x1080 hz: 144 dpi: 143 size: 340x190mm (13.4x7.5") 
  diag: 389mm (15.3") 
  Monitor-2: HDMI1 res: 1920x1200 hz: 60 dpi: 94 size: 520x320mm (20.5x12.6") 
  diag: 611mm (24") 
  OpenGL: renderer: Mesa Intel UHD Graphics (CML GT2) v: 4.6 Mesa 21.0.2 
  direct render: Yes 
Audio:
  Device-1: Intel Comet Lake PCH cAVS vendor: Micro-Star MSI 
  driver: snd_hda_intel v: kernel alternate: snd_soc_skl,snd_sof_pci 
  bus-ID: 00:1f.3 chip-ID: 8086:06c8 class-ID: 0403 
  Sound Server-1: ALSA v: k5.10.30-1-MANJARO running: yes 
  Sound Server-2: JACK v: 0.125.0 running: no 
  Sound Server-3: PulseAudio v: 14.2 running: yes 
  Sound Server-4: PipeWire v: 0.3.25 running: no 
Network:
  Device-1: Intel Comet Lake PCH CNVi WiFi driver: iwlwifi v: kernel 
  port: 5000 bus-ID: 00:14.3 chip-ID: 8086:06f0 class-ID: 0280 
  IF: wlo1 state: up mac: <filter> 
  Device-2: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet 
  vendor: Micro-Star MSI driver: r8169 v: kernel port: 3000 bus-ID: 03:00.0 
  chip-ID: 10ec:8168 class-ID: 0200 
  IF: enp3s0 state: down mac: <filter> 
Bluetooth:
  Device-1: Intel type: USB driver: btusb v: 0.8 bus-ID: 1-14:5 
  chip-ID: 8087:0026 class-ID: e001 
  Report: rfkill ID: hci0 rfk-id: 1 state: down bt-service: enabled,running 
  rfk-block: hardware: no software: yes address: see --recommends 
Drives:
  Local Storage: total: 1.38 TiB used: 0 KiB (0.0%) 
  SMART Message: Unable to run smartctl. Root privileges required. 
  ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Kingston model: RBUSNS8154P3512GJ5 
  size: 476.94 GiB block-size: physical: 512 B logical: 512 B speed: 15.8 Gb/s 
  lanes: 2 rotation: SSD serial: <filter> rev: E8FK12.D temp: 41.9 C 
  scheme: GPT 
  ID-2: /dev/sda maj-min: 8:0 vendor: Seagate model: ST1000LM048-2E7172 
  size: 931.51 GiB block-size: physical: 4096 B logical: 512 B speed: 6.0 Gb/s 
  rotation: 5400 rpm serial: <filter> rev: 0001 scheme: GPT 
  ID-3: /dev/sdb maj-min: 8:16 type: USB vendor: Kingston model: DT 101 II 
  size: 3.73 GiB block-size: physical: 512 B logical: 512 B serial: <filter> 
  rev: 1.00 scheme: MBR 
  SMART Message: Unknown USB bridge. Flash drive/Unsupported enclosure? 
Partition:
  Message: No partition data found. 
Swap:
  Alert: No swap data was found. 
Sensors:
  System Temperatures: cpu: 49.0 C mobo: N/A gpu: nouveau temp: 34.0 C 
  Fan Speeds (RPM): N/A 
Info:
  Processes: 304 Uptime: 3m wakeups: 1 Memory: 31.18 GiB used: 2.15 GiB (6.9%) 
  Init: systemd v: 247 tool: systemctl Compilers: gcc: 10.2.0 Packages: 
  pacman: 1156 lib: 278 flatpak: 0 Shell: Bash v: 5.1.0 
  running-in: gnome-terminal inxi: 3.3.04 
sudo parted -l
Model: ATA ST1000LM048-2E71 (scsi)
Disk /dev/sda: 1000GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system     Name       Flags
 1      2097kB  317MB   315MB   fat32                      boot, esp
 2      317MB   256GB   256GB   ext4
 4      256GB   991GB   734GB   ext4            misc_disc
 3      991GB   1000GB  9449MB  linux-swap(v1)             swap


Model: Kingston DT 101 II (scsi)
Disk /dev/sdb: 4010MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: 

Number  Start   End     Size    Type     File system  Flags
 2      2514MB  2518MB  4194kB  primary               esp


Model: KINGSTON RBUSNS8154P3512GJ5 (nvme)
Disk /dev/nvme0n1: 512GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End    Size    File system  Name  Flags
 1      2097kB  317MB  315MB   fat32              boot, esp
 2      317MB   503GB  502GB
 3      503GB   512GB  9449MB
sudo blkid
/dev/nvme0n1p1: LABEL_FATBOOT="NO_LABEL" LABEL="NO_LABEL" UUID="764C-C4E4" BLOCK_SIZE="512" TYPE="vfat" PARTUUID="cfae0cff-7807-3844-8a63-13b7855b28ff"
/dev/nvme0n1p2: UUID="434549f6-ac50-4a4b-b688-e17294f5728c" TYPE="crypto_LUKS" PARTUUID="7d65b1da-6251-2540-b919-ad32e191aa79"
/dev/nvme0n1p3: UUID="e7b371d3-b330-4de1-b467-8b27ed39b34b" TYPE="crypto_LUKS" PARTUUID="18deb6ce-23ca-a94a-8f0b-f6be7567c1bb"
/dev/sda1: UUID="FF3C-41DF" BLOCK_SIZE="512" TYPE="vfat" PARTUUID="4bcb6f68-9c98-6c4b-aca5-6a52a0eb7028"
/dev/sda2: UUID="9a3969dc-0c4f-4c8a-9c7f-4e8cd555f435" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="46c5c7df-64c6-3044-b0f1-9469ffafc7a7"
/dev/sda3: UUID="42569afe-0e3a-49ef-9c01-93d866fdac4a" TYPE="swap" PARTUUID="ccc480ef-62a5-304d-83f4-3b83d4978f51"
/dev/sda4: LABEL="misc" UUID="f417ae0c-6b9f-45d7-affb-827b6ad26286" BLOCK_SIZE="4096" TYPE="ext4" PARTLABEL="misc_disc" PARTUUID="70cbc5f7-da7a-4a8a-a1ac-631ec621ae80"
/dev/sdb1: BLOCK_SIZE="2048" UUID="2021-04-21-08-48-25-00" LABEL="MANJARO_CINNAMON_2102" TYPE="iso9660"
/dev/sdb2: SEC_TYPE="msdos" LABEL_FATBOOT="MISO_EFI" LABEL="MISO_EFI" UUID="176E-4A11" BLOCK_SIZE="512" TYPE="vfat"
/dev/loop0: TYPE="squashfs"
/dev/loop1: TYPE="squashfs"
/dev/loop2: TYPE="squashfs"
/dev/loop3: TYPE="squashfs"

Unfortunately, manjaro-chroot wont give useful result.

manjaro-chroot
==> ERROR: Can't create chroot on non-directory

Do you have 2 full seperate installs, each on one drive? And I understand correctly that you want to set up a dual boot where you can pick which drive you want to boot?

Please boot your computer normally from the SSD, then post the output of this command: cat /etc/default/grub

That is totally right. Two independent install on two drives.
Yes, I would a dual boot with them.
I report the result of the cat here:

cat /etc/default/grub
GRUB_DEFAULT=saved
GRUB_TIMEOUT=5
GRUB_TIMEOUT_STYLE=hidden
GRUB_DISTRIBUTOR="Manjaro"
GRUB_CMDLINE_LINUX_DEFAULT="quiet cryptdevice=UUID=434549f6-ac50-4a4b-b688-e17294f5728c:luks-434549f6-ac50-4a4b-b688-e17294f5728c root=/dev/mapper/luks-434549f6-ac50-4a4b-b688-e17294f5728c apparmor=1 security=apparmor resume=/dev/mapper/luks-e7b371d3-b330-4de1-b467-8b27ed39b34b udev.log_priority=3"
GRUB_CMDLINE_LINUX=""

# If you want to enable the save default function, uncomment the following
# line, and set GRUB_DEFAULT to saved.
GRUB_SAVEDEFAULT=true

# Preload both GPT and MBR modules so that they are not missed
GRUB_PRELOAD_MODULES="part_gpt part_msdos"

# Uncomment to enable booting from LUKS encrypted devices
#GRUB_ENABLE_CRYPTODISK=y

# Uncomment to use basic console
GRUB_TERMINAL_INPUT=console

# Uncomment to disable graphical terminal
#GRUB_TERMINAL_OUTPUT=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command 'videoinfo'
GRUB_GFXMODE=auto

# Uncomment to allow the kernel use the same resolution used by grub
GRUB_GFXPAYLOAD_LINUX=keep

# Uncomment if you want GRUB to pass to the Linux kernel the old parameter
# format "root=/dev/xxx" instead of "root=/dev/disk/by-uuid/xxx"
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
GRUB_DISABLE_RECOVERY=true

# Uncomment this option to enable os-prober execution in the grub-mkconfig command
GRUB_DISABLE_OS_PROBER=false

# Uncomment and set to the desired menu colors.  Used by normal and wallpaper
# modes only.  Entries specified as foreground/background.
GRUB_COLOR_NORMAL="light-gray/black"
GRUB_COLOR_HIGHLIGHT="green/black"

# Uncomment one of them for the gfx desired, a image background or a gfxtheme
#GRUB_BACKGROUND="/usr/share/grub/background.png"
#GRUB_THEME="/path/to/gfxtheme"

# Uncomment to get a beep at GRUB start
#GRUB_INIT_TUNE="480 440 1"

# Uncomment to ensure that the root filesystem is mounted read-only so that
# systemd-fsck can run the check automatically. We use 'fsck' by default, which
# needs 'rw' as boot parameter, to avoid delay in boot-time. 'fsck' needs to be
# removed from 'mkinitcpio.conf' to make 'systemd-fsck' work.
# See also Arch-Wiki: https://wiki.archlinux.org/index.php/Fsck#Boot_time_checking
#GRUB_ROOT_FS_RO=true
GRUB_ENABLE_CRYPTODISK=y

So, what’s probably happening here is multiple things:

Your SSD has a bootloader (grub), and so does the HDD. This isn’t optimal, there should be one bootloader for one machine. If you must have 2 boot loaders, then you can access the bios boot menu and select the disk from there, probably by mashing esc or del or f12 or something at startup.

Your SSD’s grub does not yet know about the system on the HDD. Fixing this is complicated by the fact the installs reside on seperate media. os-probe simply isn’t smart enough for that. You will need to manually add the HDD entry. I’m afraid I can’t help you with that because I don’t know the exact details and don’t want to be responsible for messing up your system.

Now, your SSD, from which you boot, has full disk encryption. This means grub will always ask for the crypt password even if you just want to boot the HDD.

Also, right now your grub is configured to immediately boot the SSD. You can force it to present a boot menu:

Edit the file /etc/default/grub as root, and change GRUB_TIMEOUT_STYLE to =menu and
GRUB_TIMEOUT=10 (or keep it at 5, it’s the time the menu will be shown)
then run the command sudo update-grub

What if I install again on SSD without encryption? I don’t mind to loose that if I get back the control of the HDD boot.

I’ve got installs on separate devices, os-prober finds them all without issue. :slight_smile:

looks like the state of the art got better then.

ZaeNae, do modify etc/default/grub like I said, then run sudo grub-mkconfig and sudo update-grub, see if that works?

I would like to achieve the most simple and quickest solution.
So, please tell me:
What if I install again on SSD without encryption? I don’t mind to loose that if I get back the control of the HDD boot.

Well… I reinstalled the Manjaro on the SSD without encryption. Now everything works well.
One tiny issue remained. The encrypted install put an ugly look grub onto the machine.
The new install didn’t changed that. I don’t know it is just ugly or some features, functionalities were also changed. I don’t trust in that …
Can i get back the nice looking grub? What is your opinion?

Unfortunately, I was able to boot from HDD only one time.
Next time the grub threw a lot of strange messages and wont boot from HDD.

ERROR: no such device: here is a long hexadecimal number
press any key

Obviously it doesn’t wait so I need reboot twelve times to reboot to notice the number
After this message wrote the following messages:

error: resume: no device specified for hibernation
/dev/sda2 clean: ....
[FAILED] failed to start load kernel modules
.... bla bla....
You are in emergency mode. bla bla...

By the way, if the action above aimed to stay the grub menu on the screen for 5 or 10 seconds, it was the default, and my system works like this. So, what else should i do more?

I figured out (with few experiments) the following:
if I install a new system on the SSD after that at the first boot from HDD is successful.

What can I do in the booted system from HDD to preserve the bootable status?

Please let me know, is there anything to achieve that, or I must to annihilate of the HDD content and install everything from the scratch?

As an alternative I can install a new Manjaro on the SSD every time when want to boot from HDD, but that wasn’t too operational, and would be a slow process. :grinning:

What kind of error messages or unexpected behaviour are you getting exactly? You’re asking me to solve a maze in the dark, but if you shine a light I’m willing to help.

I made the grub modification and update.
Now, new message appeared:

error: file '/boot/vmlinuz-5.10-x86_64' not found

What could we do now with this?

Could be somebody so kind to help/answer me?
Thanks in advance.

Have you tried to manjaro-chroot into the system via live ISO and to update it by

pacman-mirrors -f
pacman -Syyu

Then reboot.

I figured out (with few experiments) the following:
if I install a new system on the SSD after that at the first boot from HDD is successful.

Now, I booted in from that system where should chroot into.
I suppose, now I should execute those two commands. That I am going to do now.

OK, it is done.
What are the next steps?