![]() |
學(xué)校地址:湖南省 長沙市 雨花區(qū) 車站南路紅花坡路口 |
![]() |
學(xué)校地址:湖南省 長沙市 雨花區(qū) 車站南路紅花坡路口 |
為了體驗無線網(wǎng)絡(luò)的便捷性,筆者購買了一臺筆記本電腦。不過由于其內(nèi)置的PCI無線網(wǎng)卡在Linux下一直沒有驅(qū)動程序,所以形同虛設(shè)。
一個偶然的機(jī)會,筆者在網(wǎng)上發(fā)現(xiàn)了NdisWrapper軟件項目(http://ndiswrapper.sourceforge.net)。該項目并不編寫Linux驅(qū)動,而是通過一個內(nèi)核模塊來調(diào)用Windows下的Ndis驅(qū)動程序,從而巧妙地解決了這些無線網(wǎng)卡沒有Linux驅(qū)動的問題。該項目目前支持的無線網(wǎng)卡有Admtek 8211、Atheros AR5004、Broadcom 4301、Broadcom 4309、Broadcom 94306、InProcomm IPN2120和Intel PRO/Wireless Lan 2100。
筆者的網(wǎng)卡為Intel PRO/Wireless Lan 2100,安裝的Linux發(fā)行版本是SuSE 9.0 Professional,內(nèi)核版本是2.4.21-166,采用0.3版的NdisWrapper(該軟件目前的版本是0.4版,需要2.6或2.4.23以上的內(nèi)核支持)。該軟件雖然提供了非常詳盡的文檔,但因為考慮到安裝過程中存在的一些問題,所以在這里給出完整的安裝說明。下述命令均以root身份執(zhí)行。
1.到http://prdownloads.sourceforge.net/ndiswrapper/ndiswrapper-0.3.tar.gz?download下載ndiswrapper-0.3.tar.gz文件。
2.解壓縮該文件,此時會在當(dāng)前目錄下生成ndiswrapper目錄。命令如下:
# tar zxvf ndiswrapper-0.3.tar.gz
3.進(jìn)入ndiswrapper目錄,編輯driver/Makefile文件,加入如下語句:
CFLAGS += $(shell && echo -DEXPORT_SYMTAB -DMODVERSIONS -include /lib/modules/$(shell uname -r)/build/include/linux/modversions.h )
如果不加入上述語句,在執(zhí)行“depmod -a”命令時,會出現(xiàn)以下錯誤:
depmod: *** Unresolved symbols in /lib/modules/2.4.21-166-default/misc/ndiswrapper.o
4.使用“make”命令編譯ndiswrapper。
5.到http://www.asus.com/pub/ASUS/nb/M2N/v12056logo_xp.zip下載Centrino無線網(wǎng)卡的Windows驅(qū)動程序,通過“unzip”命令解壓縮。
6.創(chuàng)建/usr/local/share/ndiswrapper目錄,將.sys和.inf文件拷貝到新建目錄。命令如下:
# mkdir /usr/local/share/ndiswrapper
# cp w70n51.sys w70n51.inf /usr/local/share/ndiswrapper
7.查找無線網(wǎng)卡的Vendor ID和Device ID,具體做法如下:
(1)執(zhí)行“l(fā)spci | grep 2100”命令,結(jié)果如下,其中02:02.0為無線網(wǎng)卡的PCI ID:
02:02.0 Network controller: Intel Corp. PRO/Wireless LAN 2100 3B Mini PCI Adapter (rev 04)
(2)根據(jù)PCI ID執(zhí)行“l(fā)spci -n|grep 02:02.0”命令查找無線網(wǎng)卡的Vendor ID和Device ID,結(jié)果如下:
02:02.0 Class 0280: 8086:1043 (rev 04)
由上可知,無線網(wǎng)卡對應(yīng)的Vendor ID為8086,Device ID為1043。
8.使用“insmod driver/ndiswrapper.o”命令調(diào)用內(nèi)核模塊。
9.調(diào)用無線網(wǎng)卡的Windows驅(qū)動程序,命令如下:
# utils/loaddriver
上面代碼中, 為無線網(wǎng)卡的Vendor ID,為Device ID,為Windows驅(qū)動程序中sys文件的全路徑,為inf文件的全路徑。執(zhí)行下面的命令,如果不出現(xiàn)錯誤,無線網(wǎng)卡的燈就已經(jīng)亮起:
#utils/loaddriver 8086 2043 /usr/local/share/ndiswrapper/w70n51.sys /usr/local/share/ndiswrapper/w70n51.inf
10.設(shè)置無線網(wǎng)絡(luò),具體步驟如下:
(1)用“iwconfig”命令來顯示無線網(wǎng)卡(eth0、eth1或eth2)的信息。在以下的步驟中,用ethX表示無線網(wǎng)卡的名稱。
(2)設(shè)置無線網(wǎng)卡的操作模式為Managed,命令如下:
# iwconfig ethX mode Managed
(3)如果采用了WEP加密,需要設(shè)置WEP密碼,命令如下:
# iwconfig ethX key password
對40位和128位加密,password分別為6位和10位的十六進(jìn)制數(shù)字。
(4)設(shè)置SSID,其中ESSID為Access Point的SSID。命令如下:
# iwconfig ethX essid ESSID
(5)創(chuàng)建/etc/sysconfig/network/ifcfg-ethX文件,使得機(jī)器每次啟動時,無線網(wǎng)卡都會自動獲得IP地址。該文件內(nèi)容如下:
BOOTPROTO=‘dhcp’
MTU=‘’
REMOTE_IPADDR=‘’
STARTMODE=‘onboot’
UNIQUE=‘’
11.通過下面的命令啟動無線網(wǎng)卡:
#ifconfig ethX up
12. 后將上述的配置自動化,使得開機(jī)自動啟動無線網(wǎng)卡。具體分為以下幾個步驟:
(1)使用下面的命令將ndiswrapper.o文件拷貝到系統(tǒng)的內(nèi)核模塊目錄下:
# cp driver/ndiswrapper.*o /lib/modules/$(uname -r)/misc
(2)使用“depmod -a”命令更新系統(tǒng)的模塊信息。
(3)拷貝loaddriver文件到某個目錄(比如/usr/local/bin)下。命令如下:
# cp utils/loaddriver /usr/local/bin
(4)拷貝inf和sys文件到某個目錄(比如/usr/local/share/ndiswrapper)下。命令如下: # cp bcmwl5.sys bcmwl5.inf /usr/local/share/ndiswrapper
(5)使用下面的命令為無線網(wǎng)卡創(chuàng)建別名:
#alias ethX=ndiswrapper
(6)修改/etc/modprobe.conf文件,增加如下語句,在開機(jī)時自動調(diào)用NdisWrapper:
post-install ethX /usr/local/bin/loaddriver 8086 1043 /usr/local/share/ndiswrapper/*.sys /usr/local/share/ndiswrapper/*.inf
至此,整個設(shè)置完成。以后每次進(jìn)入Linux時,無線網(wǎng)卡就會被激活,并自動獲得IP地址。這樣就可以在Linux下使用無線網(wǎng)卡的Windows驅(qū)動自由地使用Centrino筆記本的無線網(wǎng)絡(luò)了。
|
關(guān)于收錄1 |
關(guān)于收錄2 |
網(wǎng)站幫助 |
廣告合作 |
下載聲明 |
友情連接 |
網(wǎng)站地圖 |
| 共有文章: 16835 篇
今日新文: 0 篇
當(dāng)前在線: