如何在ubuntu下使用intel 3945abg無線網卡
這個方案在升級到內核"2.6.24-20"之后不可用,不知道為何。搞定的朋友可以將方案貼出來分享,謝謝。
查閱了很多方法,包括對內核打補丁,都不是很理想。其實iwl3945對于其他intel 3945的芯片的支持還是挺好的,比如dell d630中的無線網卡(芯片是8086:4222),但是,我的x60中的無限網卡,芯片是8086:4227的。最終選擇使用ndiswrapper+無線網卡驅動for windows。參見這里
如何查看無限網卡芯片:
找到表示無限網卡的一行,看看最開頭,就是你的網卡信息。
比如:
03:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG [Golan] Network Connection (rev 02)
那么,03:00.0就是所求。
然后運行
找到和剛此型號對應的行,如:
03:00.0 0280: 8086:4227 (rev 02)
那么,無線網卡的芯片就是8086:4227的。
-----------------------------------------------------我是分割線----------------------------------------------------------
警告:本教程存在一定的風險,請謹慎使用,使用前請將相關文件備份。因為使用本教程帶來的任何損失,本人概不負責。
本文中用到的所有文件,都可以在這里一次性下載。
自從升級到ubuntu 8.04之后,自己的ibm x60上的無線網卡就變的很不穩定。
1. 可以識別無線網絡,可以鏈接到無線網絡。
2. 剛連接上之后一段時間,速度還不錯。
3. 過一段時間,網絡就變的很慢很慢,有時候是沒有速度,有時候會斷線。
4. 期間偶爾會變好。
總體來說,就是無線網卡不穩定。
于是很無奈的,我的筆記本只能天天插著網線上網了。
使用命令
下面詳細介紹一下替換驅動的步驟。主要參考[1]。
為了使用新驅動,我們需要屏蔽掉原有驅動。編輯/etc/modprobe.d/blacklist
下載ipw3945 microcode,下載地址
解壓縮之后,將得到的ipw3945.ucode文件,拷貝到/lib/firmware/2.6.24-19-generic/下。
注意,我這里的內核版本是2.6.24-19,請根據自己的情況,將這個數字替換為當前內核版本號??梢允褂?#8220;uname -r”命令查看當前內核版本。
下載ipw3945 Regulatory daemon,下載地址
解壓縮后,將x86(如果是64位機器,則是x86_64)下的ipw3945d拷貝到/sbin目錄下。
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命令
8. 安裝ipw3945
ipw3945-1.2.2.tgz解壓縮后的目錄下,運行intall命令
新建文件 /etc/modprobe.d/ipw3945
重啟之后,就可以正常使用無線網絡了。
[2] http://ipw3945.sourceforge.net/
[3] http://james.colannino.org/downloads.html
查閱了很多方法,包括對內核打補丁,都不是很理想。其實iwl3945對于其他intel 3945的芯片的支持還是挺好的,比如dell d630中的無線網卡(芯片是8086:4222),但是,我的x60中的無限網卡,芯片是8086:4227的。最終選擇使用ndiswrapper+無線網卡驅動for windows。參見這里
如何查看無限網卡芯片:
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的。
-----------------------------------------------------我是分割線----------------------------------------------------------
警告:本教程存在一定的風險,請謹慎使用,使用前請將相關文件備份。因為使用本教程帶來的任何損失,本人概不負責。
本文中用到的所有文件,都可以在這里一次性下載。
自從升級到ubuntu 8.04之后,自己的ibm x60上的無線網卡就變的很不穩定。
癥狀
具體癥狀如下:1. 可以識別無線網絡,可以鏈接到無線網絡。
2. 剛連接上之后一段時間,速度還不錯。
3. 過一段時間,網絡就變的很慢很慢,有時候是沒有速度,有時候會斷線。
4. 期間偶爾會變好。
總體來說,就是無線網卡不穩定。
于是很無奈的,我的筆記本只能天天插著網線上網了。
解決方案
最近終于不能忍了,在網上搜索了一下解決方案。是因為ubuntu 8.04使用intel新開發的驅動iwlwifi(驅動名稱是iwl3945)作為intel無線網卡的驅動,而這個iwlwifi還很不穩定。所以,基本思想是使用原來的很穩定的ipw3945驅動替換現在的iwl3945驅動。ipw3945現在已經停止開發了,最新版本是1.2.2,但是1.2.2在linux內核2.6.24或者更高版本中不能正常安裝。幸好[3]中提供了一個可用的補丁,才可以解決問題。[3]中還強烈譴責了這種新版本驅動還沒有開發穩定就停止對于舊驅動的開發的行為,認為這是對用戶極大的不負責任。使用命令
lshw -C network
查看自己的網卡驅動。下面詳細介紹一下替換驅動的步驟。主要參考[1]。
具體步驟
1. 阻止原有驅動的加載為了使用新驅動,我們需要屏蔽掉原有驅動。編輯/etc/modprobe.d/blacklist
sudo vim /etc/modprobe.d/blacklist
在blacklist文件中加入# blacklist new iwl3945
blacklist iwl3945
2. 安裝ipw3945 microcodeblacklist iwl3945
下載ipw3945 microcode,下載地址
解壓縮之后,將得到的ipw3945.ucode文件,拷貝到/lib/firmware/2.6.24-19-generic/下。
注意,我這里的內核版本是2.6.24-19,請根據自己的情況,將這個數字替換為當前內核版本號??梢允褂?#8220;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.ipw3945dsudo chmod a+x /sbin/ipw3945d-{start,stop}
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.h8. 安裝ipw3945
ipw3945-1.2.2.tgz解壓縮后的目錄下,運行intall命令
make
sudo make install
sudo chmod 777 /sbin/ipw*
9. 將ipw3945加入內核啟動加載模塊sudo make install
sudo chmod 777 /sbin/ipw*
新建文件 /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
載入模塊remove ipw3945 /sbin/ipw3945d --kill ; /sbin/modprobe -r -i ipw3945
sudo modprobe ipw3945
10. 重啟電腦重啟之后,就可以正常使用無線網絡了。
參考文檔
[1] http://www.ubuntugeek.com/using-ipw3945-instead-iwl3945-in-hardy.html[2] http://ipw3945.sourceforge.net/
[3] http://james.colannino.org/downloads.html
posted on 2008-07-09 14:21 daning 閱讀(8392) 評論(12) 編輯 收藏 所屬分類: ubuntu