How to Fix WiFi Not Working in Linux: One of the major challenges that users tend to face with Linux is WiFi. WiFi drivers are usually not included in the kernel and so there are problems getting non-Intel WiFi modules to work well in Linux. Here, we cover what happens when WiFi doesn’t work on Linux and how to fix it.
How to fix WiFi not working in Linux
The fact that Wifi does not work has many reasons, for Windows there will be more editing options, but for linux an operating system is more picky and secure, so the fix will be more difficult for those who use it. common use. Here are some ways to fix WiFi not working in Linux.
# Problems with hardware or software
Wi-Fi connection problems can be hardware or software issues. Hardware problems are relatively easy to diagnose – all you have to do is open a terminal and enter the following command:
This is a simple way to check if your physical hardware is working. localhost acts as an address to test the circuitry for your NIC. If this fix for WiFi not working in Linux doesn’t work, you may need to do some work on the hardware, whether by yourself or someone else.
# Install Drivers from Ubuntu ISO
If your distro doesn’t detect your Wi-Fi network at all, or if you get an error, then you can try to install or reinstall the Wi-Fi driver from the Ubuntu ISO file. First, you need to download the Ubuntu ISO corresponding to your Ubuntu version.
Copy the Ubuntu ISO to the Home folder on Ubuntu. Then, in Terminal, enter the following sequence of commands to mount the Ubuntu ISO on the virtual drive:
sudo mkdir /media/cdrom
sudo mount -o loop ubuntu-*.iso /media/cdrom
Go to Software & Updates from the control panel, then in the new window check the box “CDrom with [your version name and version]” and enter your password when prompted.
Click the Additional Drivers tab, then select the Wireless Network Adapter option and click Apply Changes.
# check for Device Not Detected problem
If the wireless device is not detected by Ubuntu (or any distro for that matter), then you will need to go into Terminal and enter the following command:
If you use a USB wireless card plugged in and type the command line:
If you have an internal wireless card.
If the response from these commands comes back with something similar to the screenshot below, you’re in luck: Ubuntu can find the card. It is usually identified by the Network Controller or Ethernet Controller.
In the past, many Linux distributions had trouble finding wireless cards. Thankfully, the support has gotten much better, so this is a rare case.
# Additional command
You can also use the following command to check if the machine can see the wireless device, users may need to install lshw on their machine first.
sudo lshw -C network
The output should look like this:
description: Wireless interface
product: PRO/Wireless 3945ABG [Golan] Network Connection
vendor: Intel Corporation
If this is the case and the system finds the wireless card, you can proceed with the driver/module installation as described below.
# Missing driver module
Following from successful lsusb and lspci commands give your linux distro visible the wireless card, you can assume the firmware is working, it’s just that the system doesn’t know what to do with the card . This is where the driver or module comes in. This is the most common way to fix WiFi not working in Linux.
Go back to the terminal and enter the following command:
You will see a list of used modules. To enable your module, enter the following command where modulename is the name of your chipset.
sudo modprobe modulename
For example, if your wireless chipset is RT2870, it will look like this:
sudo modprobe rt2800usb
Then run the lsmod command again to see if it loaded correctly.
# Load modules automatically on startup
It’s a rare case, but sometimes the module won’t continue to start up. In this case you can force it to load forever. This way to fix WiFi not working in Linux is not common but you should still try to check it. Enter the command below into the Terminal:
sudo nano /etc/modules
The nano text editor will open. Add your module name at the bottom and save the file. You will need to reboot and check to see if the wireless card can now see the network to allow you to connect as normal.
If you get stuck, repeat the process. Thankfully, Ubuntu has some helpful help pages in its online documentation that you can also read through. Alternatively, you can use the built-in help in the terminal by typing:
# Problem with No Network Manager
Let’s say you uninstalled Network Manager or accidentally uninstalled it. Here’s a really troubling situation: you don’t have the Internet and don’t have Network Manager, but there are things you can do.
Assuming the package is still in your cache, you can go to Terminal and type:
sudo apt install network-manager
sudo dnf install network-manager
# Arch Linux
sudo pacman -Syu network-manager
If you have cleared this cache, then you can use an Ethernet cable to connect by plugging this cable into your Ethernet port and running the above command again.
As a final step, if none of the above work, you will need to edit your config file. I chose gedit as the text editor, but you can use your preferred choice and modify the command.
sudo gedit /etc/network/interfaces
Modify it to read the following:
iface lo inet loopback
iface wlan0 inet dhcp
You can then restart the interface by entering the code below:
sudo ifdown wlan0 && sudo ifup -v wlan0
Above are some ways for you to check and fix WiFi not working in Linux, if the above instructions do not work, you should consult Linux experts. Hopefully, the sharing that the guideonline computer tips blog shared will be useful to you. Good luck.