一、前言
CentOS6.5不像CentOS7和Unbuntu那樣自動安裝好了無線網卡驅動,因此需要我們折騰一下。
二、安裝前的准備工作
[a] 檢查無線網卡驅動的安裝情況(通過查看網絡接口的安裝情況來檢查)
在虛擬終端下輸入:
#> iwconfig
若顯示如下信息,則表示未安裝無線網卡驅動
lo no wireless extensions. # 本地回環接口
eth0 no wireless extensions. # 以太網接口
若顯示如下信息,則表示已安裝了
lo no wireless extension. eth0 no wireless extension. wlan0 802.11bgn ESSID:"JH" Nickname:"rtl8191SEVA2" Mode:Managed Frequency=2.462 GHz Access Point: 8C:21:0A:57:C8:CA Bit Rate=300 Mb/s Retry:on RTS thr:off Fragment thr:off Power Management period:0us mode:All packets received Link Quality=100/100 Signal level=-48 dBm Noise level=-120 dBm Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:0 Invalid misc:0 Missed beacon:0
[b] 查詢無線網卡芯片信息
在虛擬終端下輸入:
#> lspci | grep -i network
就可以獲取到無線網卡芯片信息了,我的是RTL8191SEvB
注意:若輸入 lspci | grep -i eth ,獲取的是以太網的網卡信息
[c] 查詢內核版本
在虛擬終端下輸入:
#> uname -r
就可獲取到內核信息了,我的是2.6.32-431.el6.x86_64
得到上述信息后,我們就可以到官網下載驅動了!
三、安裝驅動
解壓驅動后,執行 make && make install 會反饋“make: *** /lib/modules/2.6.32-431.el6.x86_64/build:沒有那個文件或目錄”,但到 ls /lib/modules/2.6.32-431.el6.x86_64/ 卻發現存在build,那到底是發生什么事呢?通過 ls -l /lib/modules/2.6.32-431.el6.x86_64/ 發現build是一個符號鏈接並指向/usr/src/kernels/2.6.32-358.el6.x86_64,但當前並沒有該目錄,因此使安裝失敗。
解決辦法:執行 yum install kernel-headers kernel-devel gcc* ,安裝完成后再執行 make clean 和 make && make install 后,重啟系統。
重啟后會發現無線網卡已經啟動了,但搜索不到任何熱點,此時再重啟一次吧!
四、配置DNS
此時驅動已經搞掂了,但還是上不了網,ping一下度娘也沒返回ip,那肯定是DNS的問題了。執行 sudo vim /etc/resolv.conf ,添加nameserver就好了。
五、相關知識簡介
1. lo(回環接口):
作為虛擬網絡接口,有系統或應用程序創建且無須驅動程序控制,用於系統內部的發送和接受數據包。(系統的進程間通訊)
2. linux-headers:linux的開發頭文件
3. linux-devel:包含linux的頭文件、鏈接庫和配置文件等,由於無線網卡驅動調用了內核的一些功能,因此在編譯無線網卡驅動時(make && make install),需要使用linux-devel
六、總結
終於可以上網了,以后的學習就方便一點了。或者大家會疑惑,那之前你是怎么下載資料的啊?手機當無線信號接收器,usb直連就可以上網了。這時執行 iwconfig 會看到usb0的網絡接口哦!
尊重原創,轉載請注明來自:http://www.cnblogs.com/fsjohnhuang/p/3903091.html,^_^肥仔John