You are not logged in.
Hi!
Yesteday i updated all my packages with pacman -Syu yesterday and today when i turned the system on i couldn't log into the system anymore.
After the mother board and grub screens i got the following message:
/dev/sdb2: clean, 294182/61022208 files, 9236969/244068352 blocks
[FAILED] Failed to mount /boot.
[DEPEND] Dependancy failed for Local File Systems.
You are in emergency mode. After logging in, type "journalctl -xb" to view system logs, "systemctl reboot" to reboot or "exit" to continue bootup
Give root password for maintenance
I've searched on the internet and got to this arch forum post.
After i commented my boot entry in fstab i was able to load my system but it seems my problem is different as my kernell seems up-to date:
uname -a gives:
Linux archlinux 6.5.7-arch1-1 #1 SMP PREEMP_DYNAMIC Tue, 10 Oct 2023 21:10:21 +0000 x86_64 GNU/Linux
and my "unmounted" /boot folder is empty
After that i tried logging in installation iso and format boot partition, followed the step in Partitioning the Disks
Everything goes well but when i reboot the system i still got the same errors.
Do you have any idea what steps i might be missing? Thanks in advance!
Last edited by us0p (2023-10-26 20:43:58)
Offline
Yesteday i updated all my packages with pacman -Syu
uname -a gives:
Linux archlinux 6.5.7-arch1-1
https://archlinux.org/packages/core/x86_64/linux/
linux 6.5.8.arch1-1
You're booting an old kernel, lack modules incl. vfat, the boot partition can't be mounted.
From the install iso, mount the installed system and the boot partition, arch-chroot in and re-install the kernel and pay attention to error messages.
In case the next reboot still shows 6.5.7 (despite the update should say 6.5.8) we'll need the outpuf of "lsblk -f" *before* the chroot.
Online
Hi! Thanks for your quick answer!
Here are the steps that i did after reading your response:
1 - booted the install iso and mounted both the system and boot partition.
2 - arch-chroot /mnt
3 - uname -a gives: Linux archiso 6.3.9-arch1-1
4 - pacman -S linux - here i got the following warning: linux-6.5.8.arch1-1 is up to date -- reinstalling. (internet is on)
5 - uname -a gives: Linux archiso 6.3.9-arch1-1
6 - rebooted the system and got the same error
7 - from within the emergency mode uname -a gives: Linux archlinux 6.5.7-arch1-1
8 - booted intall iso again and mounted the partitions.
9 - lsblk -f before arch-chroot gives:
...
sdb
|_sdb1 vfat FAT32 E821-035B 343M 28% /mnt/boot
|_sdb2 ext4 1.0 26d92c6f-ce67-4394-98df-850ce7c64b0b 849.1G 2% /mnt
...
did i miss something? If so, please let me known! Thanks again!!
Offline
From the emergency shell, what's the output of "cat /proc/cmdline" ?
You might end up actually booting from sdb2 but automount /sdb1 and therefore update the kernel there.
Online
also show me your fstab
# cat /etc/fstab Offline
Hi Guys!
From the emergency shell, what's the output of "cat /proc/cmdline" ?
from emergency shell, cat/proc/cmdline gives
BOOT_IMAGE=/vmlinuz-linux root=UUID=26d92c6f-ce67-4394-98df-850ce7c64b0b rw loglevel=3 quiet
my /etc/fstab:
# /dev/sdb2
UUID=26d92c6f-ce67-4394-98df-850ce7c64b0b / ext4 rw,relatime 0 1# /dev/sdb1
UUID=9A0D-DF63 /boot vfat rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro 0 2
You might end up actually booting from sdb2 but automount /sdb1 and therefore update the kernel there.
I probabbly got it wrong, but i tried to mount /dev/sdb1 to /boot in the emergency shell and got the following:
mount: /boot: unknown filesystem type 'vfat'.
I did some googling and got to this post, looks like just updating the kernel worked for him.
If i run pacman -S linux in emergency shell or within chroot in installation iso it looks like i doesn't update anything.
i got the following message:
warning linux-6.5.8.arch1-1 is up to date -- reinstalling
if i run uname -a after running the command or after rebooting i get:
Linux archlinux 6.5.7-arch1-1
but if i run pacman -Q | grep linux:
archlinux-keyring 20231017-1
linux 6.5.8.arch1-1
linux-api-headers 6.4-1
linux-firmware 20230804.7be2766d-2
linux-firmware-whence 20230904.7be2766d-2
linux-headers 6.5.8.arch1-1
util-linux 2.39.2-1
util-linux-libs 2.39.2-1
i hope that might be helpful in some way!
As always, thanks for the replies!
Offline
No, you're booting from some boot partition
file /mnt/boot/vmlinuz-linux
lsblk -f # the entire outputOnline
output of file /mnt/boot/vmlinuz-linux
/boot/vmlinuz-linux: Linux kernel x86 boot executable bzImage, version 6.5.8-arch1-1 (linux@archlinux) #1 SMP PREEMPT_DYNAMIC Thu, 19 Oct 2023 22:52:14 +0000, RO-rootFS, swap_dev 0XC, Normal VGA
output for lsblk -f
NAME FSTYPE FSVER LABEL UUID FSVAIL FSUSE% MOUNTPOINTS
sda
|_sda1
|_sda2 ntfs 90AA17F3AA17D496
|_sda3 ntfs 2C54428B544257AA
sdb
|_sdb1 vfat FAT32 9A0D-DF63 343M 28% /mnt/boot
|_sdb2 ext4 1.0 26d92c6f-ce67-4394-98df-850ce7c64b0b 849.1G 2% /mnt
sdc iso9660 Joliet Extension ARCH_202307 2023-07-01-12-04-14-00
|_sdc1 iso9660 Joliet Extension ARCH_202307 2023-07-01-12-04-14-00
|_sdc2 vfat FAT16 ARCHISO_EFI 66DA-FFE0
Offline
Just had a quick look.
Post 3. shows
sdb
|_sdb1 vfat FAT32 E821-035B 343M 28% /mnt/boot
|_sdb2 ext4 1.0 26d92c6f-ce67-4394-98df-850ce7c64b0b 849.1G 2% /mntPost.8. shows
sdb
|_sdb1 vfat FAT32 9A0D-DF63 343M 28% /mnt/boot
|_sdb2 ext4 1.0 26d92c6f-ce67-4394-98df-850ce7c64b0b 849.1G 2% /mntThat's 2 different Sdb1 codes.
Offline
Another chance is that you're actually booting from sda1, mount that somewhere and inspect its contents - notably whether there's a vmlinuz-linux
Online
It's true, that's happened because yesterday i formated my boot partition again in the hope that it would get back to normal:
the steps i did:
1 - booted installation iso
2 - formated /dev/sdb1 with mkfs.fat -F 32 /dev/sdb1
3 - mounted /dev/sdb2 to /mnt and /dev/sdb1 to /mnt/boot
4 - executed pacstrap -K /mnt base linux linux-firmware
5 - executed genfstab -U /mnt >> /mnt/etc/fstab
6 - arch-chroot into /mnt
7 - executed grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB
8 - and grub-mkconfig -o /boot/grub/grub.cfg
9 - reboot
after rebooting i got the emergency shell again.
lsblk -l gives:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 447.1G 0 disk
sda1 8:1 0 16M 0 part
sda2 8:2 0 446.6G 0 part
sda3 8:3 0 574M 0 part
sdb 8:16 0 931.5G 0 disk
sdb1 8:17 0 476M 0 part
sda2 8:18 0 931G 0 part /
sdc 8:32 1 7.5G 0 disk
sdc1 8:33 1 798M 0 part
sdc2 8:34 1 15M 0 part
It doesn't showw the mount point for sdb1 which should be /boot
ls /boot returns nothing, so it's not mounted right?
so i executed pacman -S linux and now my /boot folder have the following files:
initramfs-linux-fallback.img
initramfs-linux.img
vmlinuz-linux
those are the steps that i did last night, that's why the sdb1 code are different.
The problem still remains though
Offline
You're booting from some /boot partition - installing the kernel into the /boot path of the root partition won't help.
Inspect sda1 (from the install iso)
Online
Guys, i solved here, the problem was that for some reason there were files from my /boot folder directly in my root folder, and the vmlinuz-linux there where the one pointing with the 6.5.7 version of the kernel!!!
i just removed those files from there and done, i`m up and running again.
Thank you every one from the replies, you guys really helped me a lot.
I still don't know how did that happen (probably bc i was tinkering around so much) so now i'll try to find that out, but i'll mark this as solved, just to leave registered here my solution:
1 - boot installation iso
2 - mount /dev/sdb2 /mnt
3 - ls /mnt gives the root directories and also list the following files, which should be within /boot: initramfs-linux-fallback.img, initramfs-linux.img, vmlinuz-linux
4 - removed those files from root folder
5 - reboot
after that i was able to boot directly in my system without errors!
just to make sure everything was right i formatted my /dev/sdb1 one last time, following the steps in the installation guide and that was it.
Thanks again for all the answers!
Offline
the problem was that for some reason there were files from my /boot folder directly in my root folder, and the vmlinuz-linux there where the one pointing with the 6.5.7 version of the kernel!!!
That doesn't make any sense at all.
1.
ls /boot returns nothing, so it's not mounted right?
so i executed pacman -S linux and now my /boot folder have the following files:
2. You've been booting the 6.5.7 kernel, removing that would just break the entire boot process.
Online
ls /boot returns nothing, so it's not mounted right?
so i executed pacman -S linux and now my /boot folder have the following files:
initramfs-linux-fallback.img
initramfs-linux.img
vmlinuz-linux
After i executed pacman -S linux the /boot now has the 6.5.8 kernel.
But my / also had those files, which were the ones with the 6.5.7 kernel.
Looks like it was runing the kernel present in / and not geting to the kernel in /boot.
Could it be that after i removed the files in / it was able to the to /boot files again, and therefore, boot the right kernel?
Offline
That would suggest you've at some point (recursively) mounted sdb2 into /boot and were (are?) booting from that partition?
7 - executed grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB
8 - and grub-mkconfig -o /boot/grub/grub.cfg
would have been instrumental to salvage that situation.
Online