You are not logged in.
Pages: 1
I've been using archlinux for about one year on my laptop. A couple of days ago was my first attempt to upgrade my system, i rebooted my machine once it finished and i noticed that a lot of things stopped working like wifi, mouse, blutooth and more. no wifi interface shown when i use iw, iwctl and ip utilities. Everything related to hardware is fine because my windows 11 wroks perfectly. Also, when i chroot into the system i can just use the wifi interface but i had no idea how to fix this issue since i am just a newbie in linux.
Theres one thing shown at booting up says 'a start job is running for /dev/zram0' and it waits for a minute and a half then it says 'time out'. This started after that damn upgrade.
I tried upgrading again while in chroot, nothing changed. And before that i tried pacman -Suu (which supposed to do a downgrade right?) and it did nothing.
I'll be thankful if you guide me how to fix it ? (do not forget that i suck at linux).
Last edited by momendefdaa (2025-02-14 20:54:30)
Offline
What are the output of uname -a and of pacman -Q linux ? (Assuming you are using the mainline kernel) Change that command if you are using a different kernel.
Do the versions reported by those commands match?
Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
Sometimes it is the people no one can imagine anything of who do the things no one can imagine. -- Alan Turing
---
How to Ask Questions the Smart Way
Offline
One year without upgrading? I think you're using the wrong distribution.
Arch is like a bike — it's only stable when it's rolling
Jin, Jîyan, Azadî
Offline
One year without upgrading? I think you're using the wrong distribution.
Jason W Ryan wrote:Arch is like a bike — it's only stable when it's rolling
I was more interested in learning the basics of linux, text manipulation, vim, writing some scripts and a small other few things. So, yes, nothing made me feel like it is necessary to upgrade my system.
Offline
What are the output of uname -a and of pacman -Q linux ? (Assuming you are using the mainline kernel) Change that command if you are using a different kernel.
Do the versions reported by those commands match?
The output is different. The one shown with pacman -Q linux seems to be newer (6.13.2.arch1-1) than what's in the output of uname -a (6.11.6-arch1-1).
Offline
That is a problem. The kernel you loaded at boot (uname) came from your boot volume. The kernel needs loadable kernel modules to deal with your specific hardware. When you updated, the kernel modules were updated from those of your old kernel to those of the new kernel (the output of pacman -Q linux).
What happened is the new kernel was written to /boot (including some ram disk images). The problem is that your boot volume was not mounted on /boot (a common beginner mistake).
So, your kernel was loaded from your boot volume and went looking for its modules. It cannot find them because they have been removed and replaced by those for the new kernel.
To fix this:
Boot your system.
Mount the boot partition on /mnt
Do a pacman -S linux. This will install the kernel into /boot which NOW is your boot partition.
Fix your /etc/fstab to mount your boot partition on /boot so the next time you upgrade the kernel this does not happen again
Reboot.
This should 'fix' things. If it does, we are not done yet. We still need to clean up your /boot directory (which is now a mount point)
Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
Sometimes it is the people no one can imagine anything of who do the things no one can imagine. -- Alan Turing
---
How to Ask Questions the Smart Way
Offline
That is a problem. The kernel you loaded at boot (uname) came from your boot volume. The kernel needs loadable kernel modules to deal with your specific hardware. When you updated, the kernel modules were updated from those of your old kernel to those of the new kernel (the output of pacman -Q linux).
What happened is the new kernel was written to /boot (including some ram disk images). The problem is that your boot volume was not mounted on /boot (a common beginner mistake).
So, your kernel was loaded from your boot volume and went looking for its modules. It cannot find them because they have been removed and replaced by those for the new kernel.
To fix this:
Boot your system.
Mount the boot partition on /mnt
Do a pacman -S linux. This will install the kernel into /boot which NOW is your boot partition.
Fix your /etc/fstab to mount your boot partition on /boot so the next time you upgrade the kernel this does not happen again
Reboot.This should 'fix' things. If it does, we are not done yet. We still need to clean up your /boot directory (which is now a mount point)
THANKS for the wonderful explanation.\
yesterday after a lil' bit of digging, i reconfigured the grub.cfg and reinstalled it after specifying the boot partition mount point. this fixed the problem (as it seems) but comparing to what you've posted, it is more like a 'temporary fix'.
i noticed that the boot partition was not being mounted from the lsblk command, it seemed to be weird but i had no idea what's going on. and yes, the /boot directory is messed up, it has several files including vmlinuz, it is not a mountpoint currently, so it should not have any files, am i right?
outputs:
uname -r:
6.13.2-arch1-1
pacman -Q linux:
linux 6.13.2.arch1-1
boot partition contents (depth level 2):
/mnt
├── EFI
│ ├── arch
│ └── BOOT
├── grub
│ ├── fonts
│ ├── grub.cfg
│ ├── grubenv
│ ├── locale
│ ├── themes
│ └── x86_64-efi
├── initramfs-linux-fallback.img
├── initramfs-linux.img
├── intel-ucode.img
└── vmlinuz-linux
/boot directory contents (fstab has not been fixed yet):
grub initramfs-linux-fallback.img initramfs-linux.img intel-ucode.img vmlinuz-linux
so what i have to do now is just to fix the /etc/fstab file, after fixing the mess inside the /boot directory is that correct?
Last edited by momendefdaa (2025-02-15 17:51:42)
Offline
There is no "mess" inside the /boot/ directory, the posted contents look fine. Just fix your fstab.
But if you're using GRUB you don't need a separate /boot/ partition at all and having one is just creating problems for you. It would be simpler to have a single root partition (IMO).
Jin, Jîyan, Azadî
Offline
so what i have to do now is just to fix the /etc/fstab file, after fixing the mess inside the /boot directory is that correct?
Exactly.
Edit:
HoaS, Is not GRUB usually installed on a boot volume? I think in the MBR partition days you could boot from your root volume. I don't think that is true with uEFI. I am missing something?
Last edited by ewaller (2025-02-17 15:49:05)
Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
Sometimes it is the people no one can imagine anything of who do the things no one can imagine. -- Alan Turing
---
How to Ask Questions the Smart Way
Offline
You can have just the GRUB EFI payload on the ESP, but still have your kernels on your root partition in the /boot directory and GRUB will read them from there just fine (unless you have a somewhat esoteric filesystem flags, e.g. afaik casefolding on ext4 will break it)
Last edited by V1del (2025-02-18 15:31:36)
Offline
Did i have mistaken the 'boot' partition thing? I don't have a separate boot partition, it's just the esp partition. Do you usually call it 'boot' partition or i just misunderstood? I thought the problem has been fixed when i fixed my fstab file, but what i did is to mount the esp partition on /boot. I did this right after the problem fixed that time and i thought i did well. I upgraded my system two times since then. Just finished the second one, and in both attempts i ended up chroot-ing into my system and trying to fix the same problem lol. And before doing this , my machine couldn't startup, it said failed to mount on /boot that partition i specified in fstab file. So all my work seems crap or am i just dumb enough for that? Please i need a permanent fix for this bc i am sick of it.
Edit:
To fix this:
Boot your system.
Mount the boot partition on /mnt
Do a pacman -S linux. This will install the kernel into /boot which NOW is your boot partition.
I did exactly this. I made it to the system, everything looks fine. But i don't want to run into this again This is the third time in a row lol.
Last edited by momendefdaa (Yesterday 11:43:26)
Offline
What are the output of lsblk and of cat /etc/fstab ?
Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
Sometimes it is the people no one can imagine anything of who do the things no one can imagine. -- Alan Turing
---
How to Ask Questions the Smart Way
Offline
So do you want a separate /boot/ partition or not?
If you want to keep it use this from the live ISO (replace X & Y with the drive letter & partition number of your main root partition):
mount /dev/sdXY /mnt
arch-chroot /mnt /bin/su -
mount -a
pacman -Syu linux
exit
reboot
If you want to move /boot/ back to the root partition omit the `mount -a` line and instead delete the /boot/ line in /etc/fstab.
EDIT: also run grub-install & grub-mkconfig again (from the chroot).
Last edited by Head_on_a_Stick (Yesterday 19:07:09)
Jin, Jîyan, Azadî
Offline
Pages: 1