1

I installed Arch Linux a few weeks ago and ever since I booted it up yesterday I've been having an issue where my Wi-Fi doesn't want to work, despite it working without issue until this point.

I looked into a few other threads and upon doing running (ip link) i got the result:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

Another thread I saw had the same result and a response mentioned to run (ls /proc/sys/net/ipv4/conf) and the directories listed were (all, default, lo).

The thread mentioned that there should a wlan0 directory and continued assuming there was however this is not the case for me.

How do I restore Wi-Fi access on my system?

Upon being asked to run lspci -k My network adapter is:

0000:01:00.0 Network Controller: Realtek Semiconductor Co., Ltd. RTL8821CE 802.11ac PCIe Wireless Network Adapter
DeviceName: Realtek Wireless LAN + BT
SubSystem: Hewlett-Packard Company Device 87fd

Having run the commands pacman -Q linux and uname -r I can see that they are different, as pacman -Q linux returns linux 6.1.1.arch1-1 and uname -r returns 6.0.12-arch1-1

lsblk lists:

NAME   MAJ:MIN  RM  SIZE  RO  TYPE  MOUNTPOINTZ
nvme0n1  259:0  0  238.5G  0  disk
|-nvme0n1p1  259:1  0  256M  0 part
'-nvme0n1p2  259:2  0  238.2G  0  part  /

Following the given answer, I ran mount /dev/nvme0n1p1 /boot and I got the error:

mount: /boot: unknown filestsytem type 'vfat'
dmesg(1) may have more information after mount system call.
10
  • 1
    Are you absolutely certain it used to work? Did you change anything (installed updates, different hardware, …)? Do you know the make and model of your Wi-Fi adapter? Did it originally work out-of-the-box or did you have to install drivers manually?
    – Daniel B
    Commented Jan 1, 2023 at 17:40
  • You may start from checking/sharing dmesg/journalctl -k. lspci -k may also help if it's an internal WiFi adapter.
    – Tom Yan
    Commented Jan 1, 2023 at 17:46
  • It absolutely did used to work. I haven't had any hardware changes (I'm running from an old laptop) According to lspci -k my network controller is a Realtek RTL8821CE 802.11ac PCIe Wireless Network Adapter.
    – Tadhg
    Commented Jan 1, 2023 at 17:53
  • Please edit the question and add the full output instead (at least the full output of this device).
    – Tom Yan
    Commented Jan 1, 2023 at 17:56
  • You may also check pacman -Q linux and uname -r to see if they give the same version btw.
    – Tom Yan
    Commented Jan 1, 2023 at 17:57

1 Answer 1

1

The reason your wireless NIC is "gone" is because your bootloader is loading an older kernel image, while there is (only) the newer driver for the NIC in the root filesystem, partly because of the rolling update nature of Arch (with the other part of the reason being your PEBKAC, that you didn't have the /boot partition mounted when you "designed" to use one when you installed the OS / bootloader.)

EDIT: I forgot that you actually have to downgrade the kernel first. You might check whether the older version package (the exact one as per uname -r) is in /var/cache/pacman/pkg/. If not, download it here. Then run:

pacman -U path/to/older/package

Then reboot and continue with the steps below. Actually you should be able to continue without rebooting at this point.

Try to mount /dev/nvme0n1p1 /boot and see if there is vmlinuz-linux under /boot (with e.g. ls) after the mount command.

If so, pacman -S linux to reinstall the kernel package and reboot to see if you get your WiFi back.

If so, remove all files under /boot. (findmnt /boot should give you no output again after the reboot; and there should only be vmlinuz-linux and one or two initramfs files. If there are other files skip this step and maybe let me know what else are there.)

Finally add an entry for /boot to /etc/fstab. For example:

/dev/nvme0n1p1 /boot vfat defaults 0 2

(Better replace /dev/nvme0n1p1 with UUID=..., where ... should be the UUID of the filesystem on /dev/nvme0n1, which you can obtain with lsblk -f.)

Then you can run:

mount /boot

If it runs fine you may also reboot as a paranoia check to see if /boot is mounted automatically upon boot now.

3
  • I tried to I run mount /dev/nvme0n1p1 /boot and i got the error in my update
    – Tadhg
    Commented Jan 1, 2023 at 19:27
  • See the edited answer. My bad.
    – Tom Yan
    Commented Jan 1, 2023 at 19:40
  • Sorry for the Delayed response, but yeah that worked. Thanks a million
    – Tadhg
    Commented Jan 2, 2023 at 17:36

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .