Wireless Drivers

From TheLinuxVault

Jump to: navigation, search

Contents

[edit] Wireless Drivers

There are two ways to get wireless working in Linux. The first is to use a native open source driver for your particular hardware. This is the best option, but because many hardware manufacturers do not release enough documentation of their hardware for third party open source developers to create adequate drivers. This means that there are many wireless adapters that are either unsupported, or not fully supported. If you have one of these devices, there is an alternative to use the official Microsoft Windows drivers via a wrapper called ndiswrapper. While this is a wonderful solution if you have unsupported hardware, ndiswrapper often falls short of what can be expected with a fully supported open source driver.

[edit] Open Source Drivers

Most Linux distributions will will have some way of auto-detecting which driver is needed, and installing it when the operating system is installed. If this is not the case, you may have to download and install the driver. Often times this can be accomplished using your distribution's package management system, such as apt-get on Debian based systems, yumm on Red Hat systems, yast on SuSe systems, or urpmi on Mandriva systems. Check your distribution's documentation on package management to learn more. The worst case scenario for downloading and installing an open source driver, is to download the source code and compile it yourself.

Even if there is an open source driver available for your hardware, there is no guarantee that it will function well, or at all. If you find yourself with a driver installed and running, but still no wireless support, you may need to use ndiswrapper with a Windows driver.

[edit] ndiswrapper

For wireless adapters without adequate open source driver support, there is a Windows driver wrapper called ndiswrapper. By using ndiswrapper with the appropriate Windows driver, you can get many otherwise unusable wireless adapters to work at a functional level. While there may be certain special features of an adapter that will not function well, or at all, you will be able to connect and use wireless networks. To install ndiswrapper, you can either use your distibution's package management system, or download the source code and compile it yourself. No matter how you install it, you should end up with two parts. The first part is the command line program known as ndiswapper. This is a program that you will run with the name of the Windows driver as an argument, as follows:

sudo ndiswrapper -i <path to Windows driver>

The second part is the ndiswrapper kernel module that will actually run the driver. To insert this kernel module into the running kernel, type the following into a command prompt:

sudo modprobe ndiswrapper

A common problem occurs when attempting to use ndiswrapper while a non-functional open source driver is currently running. The way to get around this is to remove the non-functional wireless driver kernel module from the running kernel. To do this, open a console and type:

sudo rmmod <name of kernel module>
sudo rmmod ndiswrapper
sudo modprobe ndisrapper

This will unload the non-functional driver, remove the ndiswrapper kernel module if it is running, and reload the ndiswrapper kernel module. To prevent the old module from loading again on reboot, edit the /etc/modprobe.d/blacklist file and append the line:

blacklist <name of kernel module>

[edit] See Also

Wireless Networking in Ubuntu

Personal tools