How to Install Ubuntu WiFi Driver: A Complete Guide

Faced with the lack of access to a wireless network immediately after installing the operating system, the user often feels confused. WiFi driver — is the fundamental software that allows the Linux kernel to interact with your device's physical network adapter. Without a properly functioning module, the system simply won't "see" available access points, leaving you without internet access.

The situation is complicated by the fact that many modern laptops, especially models with chips Broadcom or Realtek, require manual installation of proprietary components. The distribution's standard repositories may not contain the necessary code by default, especially if you're not connected to the internet. This creates a vicious cycle: you need internet access to download the driver, but you also need the driver to connect to the internet.

In this article, we'll detail the steps to identify your network adapter, find compatible software, and install it into your system. Ubuntu has powerful tools for managing your hardware, and knowing a few key terminal commands will allow you to resolve the issue in minutes. We'll cover both automated and manual installation methods.

Network adapter identification

The first and most critical step is to accurately determine the model of your wireless module. Linux - this is a system that requires precision: installing the driver for Realtek to the device Intel Not only is it useless, it can also cause kernel conflicts. To obtain hardware information, we'll need to use console utilities that provide comprehensive hardware data.

Open the terminal and enter the command lspci | grep -i networkThis will filter the list of PCI devices, leaving only network controllers. If your adapter is connected via USB (which is common in compact laptops and external devices), use the command lsusbIn the output, you will see lines containing manufacturer and model identifiers, for example, "RTL8821CE" or "Broadcom BCM43xx".

⚠️ Important: Write down or take a photo of the exact chip model. Drivers in the GUI often contain similar names in the drop-down list, and selecting the wrong one (for example, the "-dkms" version instead of the standard one) may not resolve the issue.

If the standard commands do not produce the expected result or the device is shown as "Unknown device", you can use a more detailed tool lshw. Team sudo lshw -C network will show the configuration of all network interfaces, including their logical names (for example, wlp2s0) and status (UNCLAIMED (This will indicate the absence of a driver). This information is necessary for subsequent search of a specific package in the repositories.

Using additional Ubuntu drivers

The easiest and safest way to solve this problem is to use the built-in proprietary driver management mechanism. Developers Canonical We've provided a user-friendly graphical interface that automatically scans your hardware and suggests available third-party software options.

  • 🔍 Open the application menu and find the Software & Updates utility.
  • 🔍 Go to the Additional Drivers tab.
  • 🔍 Wait for the search to complete and select the (recommended) driver from the list.
  • 🔍 Click the "Apply Changes" button and wait for the installation to complete.

After the process is complete, the system may require a reboot. This method is ideal for popular chipsets. Broadcom and some models Intel, as the packages have already been tested and signed. However, if the list is empty or the suggested drivers don't work, you'll have to resort to more advanced methods via the terminal.

📊 What network adapter do you have?
Intel Wi-Fi 6
Realtek RTL88xx
Broadcom BCM43xx
Atheros Qualcomm
I don't know, I need to check.

Manual installation via terminal and DKMS

When the graphical interface fails, the command line comes to the rescue. Mechanism DKMS (Dynamic Kernel Module Support) allows you to compile kernel modules on the fly, which is especially important during system updates, when the new kernel version may not support older driver binaries. To do this, we'll need the package dkms and kernel header files.

First, you need to make sure you have the basic build tools installed. If you have an Ethernet cable or a USB modem for network access, run the following command: sudo apt update && sudo apt install build-essential dkms linux-headers-$(uname -r)This will prepare the environment for compiling modules. Without these packages, installing drivers from source code is impossible.

sudo apt install bcmwl-kernel-source

The above command is an example of installing a device driver BroadcomFor other manufacturers, the commands will be different. For example, for some adapters Realtek a package may be required rtl8821ce-dkmsAfter installation, the module must be activated using the command sudo modprobe <module_name>, where the module name is often the same as the package name or is specified in the documentation.

☑️ Preparing for manual installation

Completed: 0 / 4

Installing drivers for Realtek and Broadcom

Compatibility issues most often arise with chips from Realtek And Broadcom. While Intel While these two vendors typically ship open-source drivers directly into the Linux kernel, they often rely on proprietary solutions or require building from GitHub sources. Broadcom often a bag is enough bcmwl-kernel-source, but for Realtek The situation is more complicated.

For owners of adapters of the series RTL8821CE, RTL8822BE and similar drivers, it is often necessary to use community-supported drivers. A popular solution is the repository lwfinger on GitHub. The installation process is as follows: clone the repository, navigate to the folder, and run the installation script. This requires careful attention, as file paths may change.

Manufacturer Chip series Driver type A common problem
Intel AX200, AC9560 Built-in kernel (iwlwifi) Fresh kernel required
Broadcom BCM43xx Proprietary (wl) Module conflict
Realtek RTL8821, RTL8723 DKMS / GitHub Absence from repositories
Atheros AR9xxx Built-in (ath9k) Rarely, unstable work

If WiFi is lost after the update, check the DKMS status with the command dkms statusThis will help you determine whether the module was successfully compiled for the new kernel version or whether the process failed due to dependency errors.

What to do if the Realtek driver does not build?

This error is often caused by missing kernel headers or an incompatible gcc compiler version. Try reinstalling the linux-headers package for your current kernel version and reinstalling the driver. Rolling back the kernel via Grub can sometimes help.

Troubleshooting Connection and Secure Boot Issues

One of the most common reasons why an installed driver does not work is a security feature. Secure Boot in the BIOS/UEFI. This technology blocks the loading of any drivers that do not have a digital signature recognized by the motherboard manufacturer. Since many WiFi drivers for Linux (especially those compiled manually) are not signed with Microsoft or OEM keys, they are blocked at the firmware level.

To check the status of Secure Boot, you can use the command mokutil --sb-stateIf this feature is enabled, you have two options: either disable Secure Boot in the BIOS settings (which reduces overall system security) or sign the kernel module yourself. The second option is more complex, but preferable for advanced users who want to maintain system security.

⚠️ Warning: Disabling Secure Boot makes the system potentially vulnerable to rootkits loaded early in the system's startup process. Only do this if you understand the risks or are using the computer on a trusted network.

It's also worth checking whether the radio interface is blocked programmatically. The command rfkill list all will show the WiFi blocking status. If you see "Soft blocked: yes," you can unblock the adapter with the command sudo rfkill unblock wifiThis is a common situation where the system disables wireless modules by default to save power or due to airplane mode settings.

Alternative Methods: USB Tethering and Installation

What if you need a driver for WiFi, but don't have internet access to download it? This is where USB Tethering (USB modem) on your smartphone comes to the rescue. By connecting your phone to your computer via a cable and activating this mode in your Android or iOS settings, you'll provide Ubuntu with internet access via your phone's mobile network. To the system, this will appear as a wired Ethernet connection, for which drivers are always available.

This method allows you to execute all the necessary commands. apt install without searching for LAN cables. If mobile internet is unavailable, you'll have to use another computer to download .deb driver packages and all their dependencies. The packages are then transferred to a USB flash drive and installed in Ubuntu using the command sudo dpkg -i package_name.deb.

In some cases, especially on new laptops with the latest hardware, the standard Ubuntu LTS repositories may contain outdated driver versions. In such a situation, it makes sense to consider installing a more recent Linux kernel (HWE - Hardware Enablement stack) or using distributions with more up-to-date software, such as Fedora or Arch, although for Ubuntu, kernel updates via sudo apt install linux-generic-hwe-22.04 (for version 22.04) often solves the compatibility issue.

Frequently Asked Questions (FAQ)

Why is WiFi slow after installing the driver?

This may be due to an incorrectly selected region (Country Code), which limits available channels and signal strength. Try setting the region using the command sudo iw reg set RU (or your country code). The issue could also be related to power management: disabling sleep mode for the WiFi card in the TLP or pm-utils settings often improves stability.

Is it possible to install the WiFi driver without reinstalling Ubuntu?

Yes, absolutely. All the methods described involve installing drivers on a running system. You don't need to reinstall the operating system; simply reboot the computer after installing the kernel module for the changes to take effect.

Where can I find a driver if my device is not listed?

Use the command lspci -nnkto find the device ID (e.g., 10ec:8821). Enter these numbers into a search engine along with the distribution name (e.g., "10ec:8821 ubuntu driver"). Solutions can often be found on the Ubuntu forum or in GitHub repositories such as "rtlwifi_new."

Does Ubuntu version affect driver availability?

Yes, newer versions of Ubuntu come with a more recent Linux kernel, which supports newer hardware out of the box. If you have an older LTS release (for example, 18.04), it may not have drivers for a WiFi card released in 2023. In this case, updating the kernel or upgrading to a more recent version of the distribution will help.