You are not logged in.

#1 2024-04-08 16:41:10

fish_monster
Member
Registered: 2022-02-21
Posts: 15

[SOLVED] Error: file `/boot/vmlinuz-linux' not found.

I am dual booting Windows 10 and Arch Linux.

When switching on my laptop and selecting Arch (which I had used 10 minutes prior), I was greeted with the following:

 Loading Linux linux ...
error: file `/boot/vmlinuz-linux' not found.
Loading inital ram disk...
error: you need to load the kernel first 

Press any key to continue ...

I am using GNU GRUB version 2.06 and the output of

 grub> ls 

is

 (proc) (hd0) (hd0,gpt8) 

and so on till gpt1.

Then the output of

 ls (hd0,gpt8) 

is

 Partition hd0,gpt8: Filesystem type ext* -Label `Arch' - Last modification time 2024-04-08 15:36:10 Monday, UUID [...] 

The output of

 ls / 

is

 lost+found/ efi/ var/ dev/ run/ etc/ tmp/ sys/ proc/ usr/ bin boot/ home/ lib lib64 mnt/ opt/ root/ skin srv/ zoneinfo Berlin 

How can I solve this problem?

Last edited by fish_monster (2024-04-09 16:36:17)

Offline

#2 2024-04-08 21:13:49

MihirKB
Member
Registered: 2024-01-15
Posts: 1

Re: [SOLVED] Error: file `/boot/vmlinuz-linux' not found.

If you can't boot in yet, use your live cd/usb again;
do lsblk
identify your root partition and mount it temporarily to /mnt using; sudo mount /dev/your_device /mnt
then arch-chroot /mnt
then sudo mount -a
now post output of lsblk
also of cat /etc/fstab
also of cat /etc/mkinitcpio.conf
assuming you mounted to /boot properly, also post: ls -R /boot/
and, your grub config


Yet Another Archer

Offline

#3 2024-04-09 16:15:20

fish_monster
Member
Registered: 2022-02-21
Posts: 15

Re: [SOLVED] Error: file `/boot/vmlinuz-linux' not found.

Problem is now solved. Steps I took that resolved the problem:

1. put arch on a usb stick and boot into it
2. mount root:

 mount /dev/my-partition /mnt 

3. mount boot:

 mount /dev/my-partition /mnt/boot 

4. change root:

 chroot /mnt 

5. install missing packages, in my case:

 pacman -S linux 

6. leave chroot environment and reboot into grub
7. go into command line and type

 set prefix=(hd1,nvme0n1p8)/boot/grub 
 set root=(hd1,nvme0n1p8) 
 insmod normal 
 normal 

8. go into command line again (it threw me out after I entered

 normal 

before) and type

 insmod linux
 linux /vmlinuz-linux root=/dev/nvme0n1p8
 initrd /initramsf.img 
 boot 

Offline

Board footer

Powered by FluxBB