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:
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