Ubuntu11.04 3945ABG無線網卡驅動安裝


       由於對無線上網的需求,特對Ubuntu11.04的無線驅動進行安裝,一波三折。

       首先是"系統設置"-->"硬件"-->"附加驅動",顯示“這個系統上沒有使用專有驅動”,也就是找不到3945ABG無線網卡的驅動。

       然后安裝了Ndiswrapper,通過"系統設置"-->"系統"-->"Windows無線驅動程序",尋找Windows下的無線驅動的inf文件進行安裝。通過驅動人生查看驅動文件或者無線適配器驅動的方法,找到的inf,在使用命令"lshw -C network"后,在description顯示的不是wireless interface,所以安裝還是不正確;

       最后,終於用以下方法成功了。。。

       參考網址:http://www.blogjava.net/daning/archive/2008/07/09/213615.html

1、查看無限網卡芯片:lspci

找到表示無限網卡的一行,看看最開頭,就是你的網卡信息。比如:
03:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG [Golan] Network Connection (rev 02)

那么,03:00.0就是所求。

然后運行:lspci -n

找到和剛此型號對應的行,如:
03:00.0 0280: 8086:4227 (rev 02)
那么,無線網卡的芯片就是8086:4227的。

若是型號是一樣的,可以往下繼續行動!!否則,不推薦。

2. 安裝ipw3945 microcode
下載ipw3945 microcode,下載地址
解壓縮之后,將得到的ipw3945.ucode文件,拷貝到/lib/firmware/2.6.24-19-generic/下。
注意,我這里的內核版本是2.6.24-19,請根據自己的情況,將這個數字替換為當前內核版本號。可以使用“uname -r”命令查看當前內核版本。

sudo cp ipw3945.ucode /lib/firmware/2.6.24-19-generic/

3. 安裝ipw3945 Regulatory daemon

下載ipw3945 Regulatory daemon,下載地址
解壓縮后,將x86(如果是64位機器,則是x86_64路徑)下的ipw3945d拷貝到/sbin目錄下。

cp x86/ipw3945d /sbin

為了讓ipw3945d工作,需要進行一些操作,這些操作已經寫在了兩個文件中,分別是ipw3945d-start和ipw3945d-stop中。我們需要將這些文件拷貝到/sbin下,執行如下命令:

sudo cp ipw3945d-{start,stop} /sbin
sudo chmod a+x /sbin/ipw3945d-{start,stop}

更詳細的說明,請參考README.ipw3945d

4. 安裝ieee80211
一般在內核中都有,特別是ubuntu安裝的內核中。所以我就不需要安裝。如果你內核中沒有ieee80211,需要安裝。請參考http://ieee80211.sf.net/。一般ubuntu用戶都可以跳過這個步驟。
5. 下載ipw3945 1.2.2
下載地址,要下載1.2.2版本。如果鏈接不能下載,可以在本文的附件中下載。得到ipw3945-1.2.2.tgz
6. 下載ipw3945補丁
下載地址。這個是一個文本文件,請直接點擊右鍵另存為。得到ipw3945-1.2.2.patch文件。
7. 打補丁
解壓縮ipw3945-1.2.2.tgz文件,將ipw3945-1.2.2.patch文件拷貝到ipw3945-1.2.2.tgz解壓縮后的目錄下,運行patch命令

patch -p1 < ipw3945-1.2.2.patch

提示輸入文件名的時候,輸入ipw3945.h

8. 安裝ipw3945
ipw3945-1.2.2.tgz解壓縮后的目錄下,運行intall命令

make
sudo make install
sudo chmod 777 /sbin/ipw*

若出現下圖問題,只要將make改成"make IEEE80211_IGNORE_DUPLICATE=y"。

9. 將ipw3945加入內核啟動加載模塊

新建文件 /etc/modprobe.d/ipw3945

sudo vim /etc/modprobe.d/ipw3945

並且在文件中添加

install ipw3945 /sbin/modprobe -i ipw3945 ; sleep 0.5 ; /sbin/ipw3945d --quiet
remove ipw3945 /sbin/ipw3945d --kill ; /sbin/modprobe -r -i ipw3945

載入模塊

sudo modprobe ipw3945

10. 重啟電腦

重啟之后,發現“設備未托管”,於是又進行下一步的探索。。

11、將/etc/NetworkManager/nm-system-settings.conf文件改成如下,若沒有則新建成如下:

# This file is installed into /etc/NetworkManager, and is loaded by

# NetworkManager by default. To override, specify: '--config file'

# during NM startup. This can be done by appending to DAEMON_OPTS in

# the file:

#

# /etc/default/NetworkManager

#

[main]
plugins=ifupdown,keyfile

[ifupdown]
managed=false

12、/etc/NetworkManager/NetworkManager.conf文件改成如下,若沒有則新建成如下:

# This file is installed into /etc/NetworkManager, and is loaded by 
# NetworkManager by default.  To override, specify: '--config file' 
# during NM startup.  This can be done by appending to DAEMON_OPTS in 
# the file:
#
# /etc/default/NetworkManager
#

[main]
plugins=ifupdown,keyfile

[ifupdown]
managed=true

13、重啟一下電腦,就可以使用無線網了,不容易啊。

補充一點:

ifconfig wlan0 up:可以打開無線指示燈

rfkill list:查看無線的禁用情況

rfkill unblock all:解除對所有設備的禁用


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM