Install the Broadcom wireless NIC Driver on centos

Source: Internet
Author: User

When centos 6.3 is installed today, the wireless network card cannot be identified .. Centos does not support wireless NICs of bcm4311, bcm4312, bcm4313, bcm4321, bcm4322, bcm43224, bcm43225, bcm43227, and bcm43228 chips. The solution is as follows.

1. view the wireless Nic Chip

First, check whether it is a Broadcom bcm43xx chip:

1 [User @ host ~] $/Sbin/lspci | grep Broadcom
2 0b: 00.0 network controller: Broadcom Corporation bcm4312802.11a/B/g (rev01)

2. download the latest driver in the http://www.broadcom.com/support/802.11/linux_sta.php

3. Unzip the downloaded driver to the/usr/local/src/hybrid-wl directory and modify the corresponding permissions:

1 [Root @ host ~] # Mkdir-P/usr/local/src/hybrid-wl
2 [Root @ hosthybrid-WL] # cd/usr/local/src/hybrid-wl
3 [Root @ hosthybrid-WL] # tar xvfz/path/to/The/tarball/hybrid-portsrc-x86_64-v5.10.91.9.3.tar.gz (name of the downloaded file)
4 [Root @ hosthybrid-WL] # chown-r someuser. somegroup/usr/local/src/hybrid-wl

4. Compile the Broadcom wireless Nic module:

1 Make API = wext

5. Copy the new WL. Ko file to the system directory:

1 CP-rf wl. Ko/lib/modules/'uname-R'/kernel/Drivers/NET/wireless/

6. Load modules to the core

First, build the dependency:

1 [Root @ host ~] # Depmod 'uname-R'

Then load the driver:

1 [Root @ hosthybrid-WL] # modprobe WL

7. Load the driver module to the core at startup:

1 [Root @ hosthybrid-WL] # cp-vi/usr/local/src/hybrid-WL/WL. Ko/lib/modules/'uname-R'/extra/
2 [Root @ host ~] # Depmod $ (uname-R)

 

 

References:

Http://wiki.centos.org/HowTos/Laptops/Wireless/Broadcom? Action = show

Http://blog.sina.com.cn/s/blog_6daad9bd0100mrl9.html



Recently, I started to use Ubuntu for Linux. Ubuntu is quite convenient to use. I only use sudo apt-Get intsall to build the environment.

OK. However, the company installed centos, and the more problems it encountered as a learning component, the better. Therefore, we decided to install centos. When I installed centos6.2, the problem came. Here we use wireless and cannot connect to the Internet.


The primary solution is to access the Internet. As a Linux cainiao, I started a variety of Baidu and Google. Summary:


1. Download the driver.

Address: http://www.broadcom.com/support/802.11/linux_sta.php

You can choose from the installed system.

2. Create and decompress the installation directory.

1) create a file directory: mkdir-m775-P/Server/hybrid/

2) Place the downloaded file in/home/wangx/to download and transfer the file:

3) mV-f/home/wangx/download/** .tar.gz/Server/hybrid/

4) decompress the file: Tar zxvf ** .tar.gz

3. Installation: Make

However, at this step, the problem occurs. The error is as follows:

Make: ***/lib/modules/2.6.32-220. el6.i686/Build: the file or directory does not exist. Stop.

Make: *** [all] Error 2

This is the Linux kernel file, so I will check whether the file exists:

CD/lib/modules/2.6.32-220. el6.i686

Ls-Al

Result: lrwxrwxrwx. 1 Root 44 build-> March 4 00:32.../../usr/src/kernels/2.6.32-220. el6.i686

Build is a linked file, and the address to which it points does not exist.

I found that the/usr/src/kernels/directory contains no content. For centos, the kernel source code is stored in the/usr/src/kernels directory. If the kernel is upgraded online, it is also placed in this directory; if there is no content in/usr/src/kernels/in your system, it means that the kernel source package kernel-devel is not installed;

The kernel source code package installed online, such as through apt + synaptic or yum, will be put in the directory of/usr/src/kernel, you need to enter the corresponding directory for compilation; here I installed it through yum.

Yum-y install Kernel

Yum-y install kernel-devel


Then I enter/Server/hybrid/, make; or the prompt/lib/modules/2.6.32-220. el6.i686/Build: There is no file or directory. Stop.


It indicates that there are still problems with the build file:

[Root @ localhost modules] # cd/lib/modules/2.6.32-220. el6.i686/

[Root @ localhost 2.6.32-220. el6.i686] # ls-Al

Drwxr-XR-X. 7 Root 4096 March 5 06:53.

Dr-XR-X. 4 Root 4096 March 5 07:04 ..

Lrwxrwxrwx. 1 Root 44 March 4 00:32 build->.../../usr/src/kernels/2.6.32-220. el6.i686


[Root @ localhost 2.6.32-220. el6.i686] # cd/usr/src/kernels/

[Root @ localhost kernels] # ls

2.6.32-220.4.2.el6.i686


You can see the problem through the above commands. if the name of the file to which the build points is incorrect, point to the build link again.

CD/lib/modules/2.6.32-220. el6.i686/

Ln-Fs.../../usr/src/kernels/2.6.32-220.4.2.el6.i686/build


I enter CD/Server/hybrid/; make. But the prompt "make [1]: GCC: The command is not found.

It turns out that I forgot to install the GCC command Yum install GCC. After the installation, I continued to make. I finally saw the hope of victory.

[Root @ localhost hybrid] # Make

[Root @ localhost hybrid] # make install

Install-D-M 755 WL. Ko/lib/modules/'uname-R'/kernel/Drivers/NET/wireless/WL. Ko

4. Configuration


1: Remove all other Broadcom wireless device drivers.

In addition to the compiled drivers, other Broadcom 802.11 chip drivers include b43, BCMA, and SSB. This driver conflicts with our new driver. So we need to remove them first.

# Lsmod | grep "b43 \ | SSB \ | BCMA \ | WL" If any of the following drivers exists, remove them: # rmmod b43 # rmmod SSB # rmmod BCMA # rmmod WL is blacklisted to prevent them from being used: # echo "blacklist SSB">/etc/modprobe. d/blacklist. conf # echo "blacklist BCMA">/etc/modprobe. d/blacklist. conf # echo "blacklist b43">/etc/modprobe. d/blacklist. conf2, according to your system execution # modprobe lib80211 and then: # insmod WL. ko now your network manager should be able to find the device. You can use wireless networks. Note: in other words, our process is to put the compiled WL. Ko into the/lib/modules/2.6.32-220.2.1.el6.i686/kernel/NET/wireless directory. Then execute the configuration.

[Root @ localhost wireless] # pwd

/Lib/modules/2.6.32-220.2.1.el6.i686/kernel/NET/wireless

[Root @ localhost wireless] # ls

201780211.ko lib80211_crypt_tkip.ko lib80211.ko

Lib80211_crypt_ccmp.ko lib80211_crypt_wep.ko WL. Ko

Note the ACL of WL. Ko.

[Root @ localhost wireless] # chmod 755 WL. Ko

[Root @ localhost wireless] # ls-Al

Total usage 3544

Drwxr-XR-X. 2 root Root 4096 January 21 23:23.

Drwxr-XR-X. 27 Root 4096 January 21 22:02 ..

-Rwxr -- r --. 1 Root 157204 03:51 201780211.ko

-Rwxr -- r --. 1 Root 8788 03:51 lib80211_crypt_ccmp.ko

-Rwxr -- r --. 1 Root 13120 December 23 03:51 lib80211_crypt_tkip.ko

-Rwxr -- r --. 1 Root 7340 December 23 03:51 lib80211_crypt_wep.ko

-Rwxr -- r --. 1 Root 10588 December 23 03:51 lib80211.ko

-Rwxr-XR-X. 1 Root 3408349 January 21 23:23 WL. Ko

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.