You are not logged in.
Apologies for typos, I'm writing on a phone, copying from a screen. I've looked at the below post, but that seemed to be a mistake with an alias, and I don't think it applies here?
https://bbs.archlinux.org/viewtopic.php?id=305507
I'm currently booting onto my machine from a fresh USB drive ("uname -r" gives 7.2.2-arch1-1), as I get a kernel panic otherwise, at the bottom of which it says "VFS: Unable to mount root fs on unknown block(0,0)".
Following various attempts I've tried to reformat my boot partition and reinstall things. I have three partitions:
/dev/sda1 512M
/dev/sda2 16GB
/dev/sda3 915GBI'm trying to avoid formatting sda3, obviously. I try to follow the installation guide (adapted to how I installed first time around) to get to the mkinitcpio stage:
mkfs.fat -F32 -n BOOT /dev/sda1
mount /dev/sda3 /mnt
mount /dev/sda1 /mnt/boot
swapon /dev/sda2
reflector -l20 -f7 -phttps --threads $(nproc) --save /etc/pacman.d/mirroring
pacstrap -K /mnt base-devel linux linux-firmware networkmanager nanotechnology bash-completion sudo grub efibootmgr intel-ucodeThe final pacstrap command says it's merely reinstalling everything, installs everything and then runs the post-installation hooks. All fine until
(7/9) Updating linux initcpios...
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'default'
==> Using default configuration file: '/etc/mkinitcpio.conf'
-> -k /boot/vmlinuz-linux -g /boot/initramfs-linux.img
==> ERROR: invalid kernel specified: '/boot/vmlinuz-linux'
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'fallback'
==> Using default configuration file: '/etc/mkinitcpio.conf'
-> -k /boot/vmlinuz-linux -g /boot/initramfs-linux-fallback.img -S autodetect
==> ERROR: invalid kernel specified: '/boot/vmlinuz-linux'
error: command failed to execute correctly I get the same sort of error message if I blindly continue in to mkinitcpio -P. After this pacstrap command:
ls /mnt/boot
intel-ucode.img vmlinuz-linuxWhereas before (I backed it up before formatting) I had initramfs-linux.img and initramfs-linux-fallback.img, but no intel-ucode.img
Last edited by Gemms (2026-09-26 11:18:19)
Offline
What was the cause of the initial kernel panic? Why are you following the installation guide and rerunning pacstrap if you have not reformatted the root file-system?
Offline
at the bottom of which it says "VFS: Unable to mount root fs on unknown block(0,0)".
doesn't sound like a "kernel panic" but misconfigured bootloader or late root device
mkfs.fat -F32 -n BOOT /dev/sda1
but whatever that was is now gone…
ERROR: invalid kernel specified: '/boot/vmlinuz-linux'
stat /mnt/boot/vmlinuz-linux
file /mnt/boot/vmlinuz-linuxThe problem is likely ahead of this but as loqs suggested: this is the wrong approach anyway - it'll be sufficient to arch-chroot into the installed system and re-install kernel and bootloader.
copying from a screen
Don't. It's tedious and error prone.
You can redirect or https://man.archlinux.org/man/tee.1 output or record the session w/ https://man.archlinux.org/man/script.1 and then post that
cat typescript | nc termbin.com 9999Worst case/absolutely last resort: link screenshots
Offline
This all started with an error where I started my computer one day and libffi.so.8 wasn't found, which broke the load to GUI, although I could still get the command line. One of the services that couldn't work was NetworkManager, so in the end I got the relevant libffi zst file from my computer at work, put it on a USB stick and installed from that. That got my NetworkManager working, while I was there I ran 'pacman -Syu' and then restarted. That was when I got the kernel panic. There might have been errors from the update, I'd never had problems before so I wasn't paying attention.
I ended up formatting and getting to reinstall things based on https://bbs.archlinux.org/viewtopic.php?id=303007 (but perhaps I misunderstood things).
I've tried 'arch-chroot /mnt' and then just reinstalling the kernel (as of last night there is now an update available to 7.2.6, got to love Arch's release frequency), but it fails at the end just like pacstrap.
> stat /mnt/boot/vmlinux-linux
File: /mnt/boot/vmlinuz-linux
Size: 17240576 Blocks: 33680 IO Block: 4096 regular file
Device: 8,1 Inode: 6 Links: 1
Access: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2026-09-25 00:00:00.000000000 +0000
Modify: 2026-09-25 18:11:02.000000000 +0000
Change: 2026-09-25 18:11:02.000000000 +0000
Birth: 2026-09-25 18:11:03.910000000 +0000
> file /mnt/boot/vmlinuz-linux
/mnt/boot/vmlinuz-linux: Linux kernel x86 boot executable, bzImage, version 7.2.6-arch2-1 (linux@archlinux) #1 SMP PREEMPT_DYNAMIC Mon, 14 Sep 2026 22:41:30 +0000, RO-rootFS, Normal VGA, setup size 512*39, syssize 0x106c20, jump 0x26c 0x8cd88ec0fc8cd239 instruction, protocol 2.15, from protected-mode code at offset 0x2cc 0x1031267 bytes ZST compressed, relocatable, handover offset 0x105ffc0, legacy 64-bit entry point, can be above 4G, 32-bit EFI handoff entry point, 64-bit EFI handoff entry point, EFI kexec boot support, xloadflags bit 5, max cmdline size 2047, init_size 0x446d000Offline
I ended up formatting
Your OP suggested that you nuked the boot partition, not the installation/root partition?
/mnt/boot/vmlinuz-linux: Linux kernel x86 boot executable, bzImage, version 7.2.6-arch2-1
That's a valid kernel - please post the complete output of the pacstrap/pacman efforts resulting in the mkinitcpio issue.
Also maybe arch-chroot and
sudo LC_ALL=C pacman -Qkk | grep -v ', 0 altered files' | grep -v backup > /tmp/howbadisit.txt
cat /tmp/howbadisit.txt | nc termbin.com 9999Offline
I think I just got confused with it being formatted with '-n BOOT' and being mounted as /mnt/boot - is that incorrect?
The output of the cat command points to https://termbin.com/wu76
The pacman output is https://termbin.com/2bt2
Offline
coreutils: 444 total files, 3 altered files
gcc: 2852 total files, 956 altered files
libc++: 1920 total files, 1769 altered files
libc++abi: 16 total files, 4 altered files
libisl: 88 total files, 15 altered files
mkinitcpio: 103 total files, 1 altered file
xz: 486 total files, 1 altered fileAnd some others look wrong as well
=> re-install every single package in that list, use the pacman instance of the install iso.
Ie. mount everything into location, do NO chroot and run
pacman --root=/mnt --cachedir=/mnt/var/cache/pacman/pkg -Syu boost-libs charls coreutils dav1d filesystem gcc ghc-libs intel-ucode java-runtime-common libc++ libc++abi libisl libutempter libvlc libwacom mkinitcpio ncurses openssl pam sqlite systemd xzOffline
So I run that command, the output is https://termbin.com/xoi2t
Then I roll the dice, chroot and mkinitcpio -P, and the error message has changed, so that's progress, I think? https://termbin.com/5glq
Offline
==> ERROR: '/lib/modules/7.2.6-arch2-1' is not a valid kernel module directorypacman -Qikk linux resp. just try to re-install that.
Pay attention to the mount status of the /boot partition.
Offline
Pay attention to the mount status of the /boot partition.
Also that you use arch-chroot fur chrootingt onto the target installation, or you must pay attention that /proc, /sys and /dev are bind-mounted from the iso into the chroot target mountpoint. These are necessary for kernel installations.
My avatar: "It's not just a toilet... a FERGUSON. The King of bowls. Sit down and give me your best shot." Al Bundy
Offline
I had tried to add 'linux' into the pacman list, but that hadn't changed anything - however, I just tried again after chrooting (with arch-chroot) and that seemed to be the magic sauce. Needed to regenerate my fstab file (thee ID had changed during one of the formats, I imagine, then run grub-install and grub-mkconfig, but now it all works! Thank you so much for your help and patience!
Offline