You are not logged in.

#1 2025-12-16 19:51:03

fabrixx
Member
From: Italy
Registered: 2015-06-07
Posts: 130

[SOLVED]Error preparing initrd: Not found, adding a new NVMe disk

I'm tryng co configure systemd-boot

I've this new Nvme disk:

nvme0n2p1: 16 GB - /boot      fat32
nvme0n2p2: 16 GB - swap
nvme0n2p3: 100 GB - /                   ext 4
nvme0n2p4: 814.5 GB - /home      ext4

This is my /boot folder content:

EFI initramfs-linux.img loader vmlinuz-linux

This is my /boot/loader folder:

entries entries.srel keys loader.conf random-seed

This is my loader file:

default arch.conf
#timeout 3
#console-mode keep

In entries folder there is arch.conf file:

title   Arch Linux
linux   /vmlinuz-linux
initrd  /initramfs-linux.img
options root=UUID=c42f45b2-0e4b-410e-ae5b-72c3028e4d27 rw

This is the error at boot:

Error at boot:
Failed to start Switch Root
See 'systemctl status initrd-switch-root.service' for details.
You are in emergency mode. After logging in, type "journalctl -xb" to view
system logs, "systemctl reboot" to reboot, or "exit"
to continue bootup.

Cannot open access to console, the root account is locked.
See sulogin(8) man page for more details.

Press Enter to continue

Myy /etc/fstab is ok with root: c42f45b2-0e4b-410e-ae5b-72c3028e4d27

Last edited by fabrixx (2025-12-18 21:30:28)

Offline

#2 2025-12-16 21:37:04

Lone_Wolf
Administrator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 14,565

Re: [SOLVED]Error preparing initrd: Not found, adding a new NVMe disk

wiki wrote:

Note that systemd-boot can only start EFI executables (e.g., the Linux kernel EFI boot stub, UEFI shell, GRUB, or the Windows Boot Manager) from the EFI system partition it is installed to or from an Extended Boot Loader Partition (XBOOTLDR partition) on the same disk.

Please post the output of fdisk -l ran as root so we can see if you have setup an ESP or XBOOTLDR partition .


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.

clean chroot building not flexible enough ?
Try clean chroot manager by graysky

Offline

#3 2025-12-16 21:39:35

Scimmia
Fellow
Registered: 2012-09-01
Posts: 13,342

Re: [SOLVED]Error preparing initrd: Not found, adding a new NVMe disk

Offline

#4 2025-12-16 22:06:59

fabrixx
Member
From: Italy
Registered: 2015-06-07
Posts: 130

Re: [SOLVED]Error preparing initrd: Not found, adding a new NVMe disk

I had arch on the first disc (Sabrent) I added a new disc to make a  new clean install(CT...)
I corrected a syntax error in arch.conf and upon reboot I no longer have that error but a red message appears for a few moments:

.../systemd/src/boot/boot.c:2649@call_image_start: Error preparing initrd: Not found

.

this  is fdisk (sabrent  disk +  new empty CT100... with the error):

Disk /dev/nvme1n1: 465.76 GiB, 500107862016 bytes, 976773168 sectors
Disk model: Sabrent Rocket 4.0 500GB
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 4D168A44-CA40-4C51-A1EE-6F97C70E9C4A

Device           Start        End   Sectors   Size Type
/dev/nvme1n1p1    2048    1050623   1048576   512M EFI System
/dev/nvme1n1p2 1050624  958398463 957347840 456.5G Linux filesystem
/dev/nvme1n1p3 958398464 976773119  18374656   8.8G Linux swap


Disk /dev/nvme0n1: 931.51 GiB, 1000204886016 bytes, 244190646 sectors
Disk model: CT1000T500SSD8
Units: sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0x89db15db

Device         Boot     Start       End   Sectors   Size Id Type
/dev/nvme0n1p1            256    262399    262144     1G 83 Linux
/dev/nvme0n1p2         262400   4456703   4194304    16G 82 Linux swap / Solaris
/dev/nvme0n1p3        4456704  30671103  26214400   100G 83 Linux
/dev/nvme0n1p4       30671104 244190645 213519542 814.5G 83 Linux

Last edited by fabrixx (2025-12-16 22:08:09)

Offline

#5 2025-12-17 09:33:29

Lone_Wolf
Administrator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 14,565

Re: [SOLVED]Error preparing initrd: Not found, adding a new NVMe disk

systemd-boot can only start things on the same disk and your (only) ESP is on the first disk.

You have 2 options :
A Add an ESP to the 2nd disk and use the bios/firmware to select which drive to boot from

B switch to a bootloader that doesn't have this limitation

Do you want to be able to boot the 2nd disk if the 1st isn't present ?
If yes, choose A

Last edited by Lone_Wolf (2025-12-17 09:33:47)


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.

clean chroot building not flexible enough ?
Try clean chroot manager by graysky

Offline

#6 2025-12-17 18:01:25

fabrixx
Member
From: Italy
Registered: 2015-06-07
Posts: 130

Re: [SOLVED]Error preparing initrd: Not found, adding a new NVMe disk

A, i want to use system-d boot

Now I'm starting to remember, many years ago when I installed Arch on that disk I had left some free space at the beginning for ESP.
Then I started asking Gemini and ended up in a loop where I never got to the solution.
That's why when I left the chroot and rebooted it always loaded the Sabrent first and I had to reverse the drive.

So what do you recommend I do? Do I need to create a new ESP on the new disk or can I somehow make it point to the second one?

Thank you.

Offline

#7 2025-12-17 18:05:05

Scimmia
Fellow
Registered: 2012-09-01
Posts: 13,342

Re: [SOLVED]Error preparing initrd: Not found, adding a new NVMe disk

As long as the kernel and initrafms are on the ESP, you're fine. If you're trying to use an XBOOTLDR partition on a different disk, it won't work.

There does not need to be an ESP on the second disk to boot from it, as systemd-boot is no longer active once the initramfs loads.

Last edited by Scimmia (2025-12-17 18:06:00)

Offline

#8 2025-12-17 18:09:03

fabrixx
Member
From: Italy
Registered: 2015-06-07
Posts: 130

Re: [SOLVED]Error preparing initrd: Not found, adding a new NVMe disk

So is it enough for me to modify the arch.conf of the old disk and make it point to the root of the new disk?

Offline

#9 2025-12-17 18:10:59

Scimmia
Fellow
Registered: 2012-09-01
Posts: 13,342

Re: [SOLVED]Error preparing initrd: Not found, adding a new NVMe disk

That completely depends on where you're mounting things and how you're setting this system up. Reading again, are you trying to have parallel Arch installations?

Offline

#10 2025-12-17 18:17:40

fabrixx
Member
From: Italy
Registered: 2015-06-07
Posts: 130

Re: [SOLVED]Error preparing initrd: Not found, adding a new NVMe disk

I want to make a clean arch installation on new disk. I would like to be able to see the old disk so I can clean it up and transfer some folders to the new one, delete the rest and use it as an archive.  I'm switching from GNOME to KDE   in a more clean way.

Offline

#11 2025-12-17 18:54:10

fabrixx
Member
From: Italy
Registered: 2015-06-07
Posts: 130

Re: [SOLVED]Error preparing initrd: Not found, adding a new NVMe disk

OK I rebooted from USB key. Mounted /boot and /root of the old disk.
I chrooted and edited the old disk's arch.conf
from

options   root=/dev/nvme0n1p2 rw

to

options   root=UUID=newdiskrootuuid rw

It seems to work:

Arch Linux 6.17.9-arch1-1 (tty1)
arch-nvme-pc login: _

Is safe use the old disk EFI?

Offline

#12 2025-12-17 19:13:13

Scimmia
Fellow
Registered: 2012-09-01
Posts: 13,342

Re: [SOLVED]Error preparing initrd: Not found, adding a new NVMe disk

As long as you don't plan on removing or wiping that disk, sure.

Offline

#13 2025-12-17 19:24:19

fabrixx
Member
From: Italy
Registered: 2015-06-07
Posts: 130

Re: [SOLVED]Error preparing initrd: Not found, adding a new NVMe disk

ok thanks.

Offline

#14 2025-12-17 20:42:43

fabrixx
Member
From: Italy
Registered: 2015-06-07
Posts: 130

Re: [SOLVED]Error preparing initrd: Not found, adding a new NVMe disk

where i have to add nvidia_drm.modeset?
In old arch.conf EFI diks?

Last edited by fabrixx (2025-12-17 20:46:14)

Offline

#15 2025-12-18 21:29:06

fabrixx
Member
From: Italy
Registered: 2015-06-07
Posts: 130

Re: [SOLVED]Error preparing initrd: Not found, adding a new NVMe disk

Booting from the second disk caused problems with the kernel, which was being updated in the wrong location. An older kernel was being used, and I lost connectivity and video.

I first tried enabling the non-UEFI CSM in the BIOS and setting boot from the new disk, but that didn't work.

So I reformatted the /boot partition on the new disk to GPT, but there were block overlap issues.

I had to remove some space from the home directory and then reformat it.

Then I had to reinstall systemd boot, reconfigure fstab, and reset CSM disabled in the BIOS.

Then I had to reassign the home directory to my user.

Now i have An EFI boot also on new disk.

Finally, I now have networking and Nvidia back. I think I've learned a lot these days.

Offline

Board footer

Powered by FluxBB