Why Ubuntu Can't Detect Wi-Fi: A Complete Troubleshooting Guide

Failure to detect wireless networks after installing a Linux distribution is one of the most common and frustrating problems for beginners. This is often due to the lack of proprietary drivers in the standard repository or a conflict between kernel versions and wireless card modules. Unlike Windows, where hardware manufacturers often provide installation discs or pre-installed packages, support in the open-source world sometimes requires manual initialization by the user.

Before attempting complex manipulations with the terminal, it's important to understand the physical nature of the problem: the adapter may simply be disabled by software, blocked by the BIOS, or require an internet connection via a cable to initially download files. Diagnostics It starts with checking the device's status and determining whether the operating system even detects the hardware component on the bus. In most cases, the problem can be resolved in 10-15 minutes if the chipset model is correctly identified.

In this article, we'll cover detailed action algorithms for various scenarios, from simple switches to compiling drivers from source code. Ubuntu has powerful network management tools, but they require proper configuration. We'll look at how to use the utility. rfkill, checking kernel logs and installing missing packages through apt.

Primary diagnostics and checking of the physical condition of the adapter

The first step should always be checking whether the computer recognizes the wireless module at the hardware level. Users often start looking for drivers when the problem lies in a simple software blockage or a disabled switch on the laptop case. To obtain complete information about connected network devices in Linux, use the command lspci for internal cards or lsusb for external USB whistles.

Run the command in the terminal lspci | grep -i network or lsusb and carefully examine the output. If you see a line with the manufacturer's name, for example, Intel Corporation, Realtek or Broadcom, which means the system sees the device but doesn't know how to use it. If the list is empty, the card may be physically faulty, loose in the slot, or disabled in the BIOS/UEFI.

⚠️ Attention: Some laptops have a hardware Wi-Fi switch on the side or a key combination (Fn + F2, F12) that completely disables the module. Make sure the wireless network indicator is on or blinking before running the diagnostics.

The next important step is to check the status of the locks using the utility. rfkillThis command shows whether the adapter is blocked by software (soft block) or hardware (hard block). Run rfkill list all in the terminal. If you see the status "blocked: yes", that explains why Ubuntu ignores the presence of networks around.

To remove the software lock, simply enter the command sudo rfkill unblock wifi or sudo rfkill unblock allAfter this, try scanning available networks again. If the block is removed but reappears automatically after a few seconds, there may be a conflict with the power management service or another network manager.

Driver analysis and work with additional modules

The most common reason for a lack of Wi-Fi is the lack of proprietary firmware files for specific card models. Distribution Ubuntu By default, it only includes free drivers, which creates problems for owners of equipment from Broadcom and some older models RealtekFortunately, the system has an "Additional Drivers" feature that automatically scans your hardware and offers to install any missing components.

To use this tool without an internet connection, you'll need a temporary connection via Ethernet cable or USB modem (Android/iOS), as the installer needs to download packages from repositories. Go to the Applications menu, find "Software & Updates," and open the "Additional Drivers" tab. The system will search for a suitable driver and, if it finds one, offer to activate it.

  • 📡 Broadcom STA: Often required for BCM43xx series cards. Select the bcmwl-kernel-source driver.
  • 🔌 Realtek RTL: Many models require the rtlwifi-new-dkms package, which may not be included in the default installation.
  • 🧩 Firmware-linux: A common microcode package required for many Intel and Atheros wireless chipsets to function.

If the graphical interface doesn't offer any drivers, manual installation via the terminal may be required. For Broadcom cards, the following command often helps: sudo apt install bcmwl-kernel-sourceAfter installation, you must reboot the computer or reinstall the kernel module using the command sudo modprobe -r wl && sudo modprobe wl. Linux kernel should pick up the changes immediately.

📊 What wireless adapter do you have?
Intel Wi-Fi 6
Realtek RTL8821CE
Broadcom BCM43xx
Other / I don't know

Troubleshooting Kernel Modules and DKMS

Sometimes the driver is installed, but the kernel module doesn't load automatically at system startup. This can happen after a kernel update, when old modules become incompatible with the new version. kernelIn such cases, DKMS (Dynamic Kernel Module Support) technology is used, which allows driver modules to be recompiled for the current kernel without losing settings.

You can check the status of installed DKMS modules using the command dkms statusIf you see errors or the "needs rebuild" status, you need to rebuild. It's also worth checking if the module is blacklisted. Blacklist configuration files are located in the directory /etc/modprobe.d/ and may contain lines that prohibit loading of certain drivers, for example, blacklist bcm43xx.

sudo nano /etc/modprobe.d/blacklist.conf

Open this file and find the lines that relate to your adapter. If you're unsure, you can comment out the line by adding the symbol # at the beginning, and save the file. After that, run the command sudo update-initramfs -uto update the boot kernel image and reboot. This often restores functionality to adapters that became undetected after a system upgrade.

⚠️ Attention: Use caution when editing system files. Deleting critical lines can result in network instability or an inability to boot the system. Always create backups before making changes.

Configuring NetworkManager and Managing Connections

In modern versions of Ubuntu, the service responsible for managing network connections is NetworkManagerIf the drivers are installed correctly, but the Wi-Fi interface isn't listed, the problem may be with the manager's configuration. Sometimes the service freezes or incorrectly reads the configuration files located in /etc/NetworkManager/.

Try restarting the service with the command sudo systemctl restart NetworkManagerIf this doesn't help, check the device status using the utility. nmcli (NetworkManager command line interface). Team nmcli radio wifi will show whether Wi-Fi is on, and nmcli dev status will display the status of all network interfaces. If a device is marked as "unmanaged," configuration settings need to be changed.

nmcli command Description of action Expected result
nmcli radio wifi on Enabling the Wi-Fi radio module The status changes to enabled
nmcli dev wifi list Scanning available networks List of SSIDs with signal strength
nmcli dev disconnect wlan0 Breaking the current connection Device status: disconnected
nmcli con show Displaying connection profiles List of saved networks

In some cases, deleting the state settings file, which may have become corrupted, helps. The file /var/lib/NetworkManager/NetworkManager.state You can rename or delete it (requires a stopped service) so the system will recreate it with default settings. This is especially important if you recently changed the hostname or made manual changes to the network configuration.

☑️ NetworkManager verification checklist

Completed: 0 / 4

Specific problems with Realtek and Broadcom adapters

Owners of laptops with chips Realtek (especially the RTL8821CE and RTL8822BE series) often encounter situations where the standard drivers are unstable or don't work at all. For these cases, the Linux community has developed alternative drivers that can be installed from PPA repositories or compiled from source code on GitHub. This requires a compiler. build-essential and kernel header files linux-headers-generic.

The installation process typically involves cloning the repository, running the installation script, and rebooting. For example, for many Realtek cards, the driver is effective. rtw88 or rtl88x2ce-dkmsIt's important to keep track of kernel versions: after each major Ubuntu update, the driver installed via DKMS should be rebuilt automatically, but sometimes this process requires manual intervention.

For cards Broadcom the situation is often the opposite: there is a driver, but it conflicts with an open driver b43 or bcmaIn this case, you need to forcibly disable open modules via blacklist, as described above, and leave only the proprietary one wlAn error in driver selection results in the system seeing the device but being unable to initiate a connection.

Where can I find drivers for Realtek?

Realtek's official website rarely provides source code for Linux. The best sources are the lwfinger/rtlwifi_new GitHub repository or specialized PPAs, such as HWE (Hardware Enablement) for Ubuntu.

It's worth noting that some new adapters require very recent kernel versions, which may not be available in the stable version of the distribution. In such cases, it is recommended to use the HWE (Hardware Enablement) stack, which provides newer kernels for LTS versions of Ubuntu. You can install it with the command sudo apt install --install-recommends linux-generic-hwe-22.04 (the version depends on your OS).

Resetting network settings and final checks

If none of these methods work, there's a radical but effective solution: a complete reset of network settings. This will delete all saved Wi-Fi profiles, passwords, and configurations, returning the system to its "as-installed" state. This helps eliminate errors accumulated during numerous configuration experiments.

To perform a reset, you can use the built-in script or manually delete the configuration files. The cleanest method is to reinstall the network-manager packages and associated libraries. The command sudo apt install --reinstall network-manager network-manager-gnome frequently restores the integrity of configuration files.

  • 🔄 Rebooting the router: Sometimes the problem isn't Ubuntu, but a frozen DHCP client on the router. Restarting the access point solves 10% of "Linux problems."
  • 🔋 Energy saving: Disable power saving mode for Wi-Fi in the configuration file, as it often causes connection drops or failure to wake from sleep mode.
  • 📡 Frequency range: Check if your adapter supports 5 GHz. Older cards only see 2.4 GHz, and if your router is configured for 5 GHz only, the network won't appear.
⚠️ Attention: Interfaces and package names may vary depending on the Ubuntu version (20.04, 22.04, 24.04) and desktop environment used (GNOME, KDE, XFCE). Always check the package names in the official documentation for your version.

Frequently Asked Questions (FAQ)

Why did Wi-Fi disappear after updating Ubuntu?

Updating the kernel often causes installed drivers (DKMS modules) to become out of sync with the new kernel version. It's necessary to recompile the modules or reinstall the driver packages that correspond to the new kernel version.

How to install a Wi-Fi driver without internet connection on Ubuntu?

You'll need another computer with internet access. Download the necessary deb packages (drivers, linux-headers) on the other PC, transfer them to a USB flash drive, and install them on the problematic computer using the command sudo dpkg -i package_name.deb.

The rfkill command shows "Hard blocked", what should I do?

This indicates a physical blockage. Check the sides of your laptop for a switch; try the Fn+F2 key combination (or a similar one for your model). If there are no switches, go to the BIOS/UEFI and find the Wireless or Onboard Devices section to enable the adapter there.

Can a USB Wi-Fi adapter be used as a temporary solution?

Yes, this is a great way to get internet access to download drivers for the integrated card. However, make sure the USB adapter has native Linux support (Atheros and some Realtek chipsets work out of the box), otherwise you'll run into the same driver issues.