[心得] Ubuntu 中無線網路卡的議題
無線網路卡目前在市面上有三種規格,分別是 802.11b,802.11g 和 802.11a。802.11b
的速度是 11Mbps,而 802.11g 和 802.11a 都是傳輸速度為 54Mbps 的規格。由於
802.11b 和 802.11g 都是採用 2.4GHz 的無線頻段,所以互相可以相容。802.11a 採用
5GHz,所以不能和其它的規格相容,因此在台灣使用率不高,建議使用者可以直接不用考
慮了!
在目前筆記型電腦內建的無線網卡方面,若是 Intel Centrino 晶片組系列的筆記型電腦
,通常內建的無線網路卡在驅動上都沒有問題,但少數 Centrino 的筆記型電腦沒有採用
Intel 的配套 Intel PRO/Wireless 無線網卡,這個時候就要查詢一下是用什們晶片。
若您的筆記型電腦確定是採用 Intel PRO/Wireless 無線網卡,無線網路對您來說已經不
是問題了,可以跳過這一小節了唷!
而若非使用此系列晶片組的筆記型電腦,也有可能被 Ubuntu 所支援,讀者可以透過指令
$ lspci -v 去察看有 wireless 關鍵字的那幾行,會有所使用的晶片詳細資訊。然後
讀者可以在接下來的部份讀到各種晶片支援的訊息。
若是舊款的筆記型電腦沒有內建無線網路卡,而讀者想要添加,那您也可以依照下面的資
訊去選擇購買。
目前在 GNU/Linux 上驅動無線網路卡的方式有兩種,一種是邪惡的透過 ndiswrapper
http://ndiswrapper.sourceforge.net 去載入在 MS Windows 上的驅動程式,這樣幾乎
所有的無線網路卡都可以驅動,總不能這些無線網卡公司連 MS 的驅動程式都不提供吧,
那不就不用賣了!但是這樣有幾個缺點,無法在 64 位元環境或非 x86 環境下使用,且
這不是 GNU/Linux 原生的驅動方式,所以效能和功能會有所缺憾。當然您的卡若沒有被
支援,這就是不得已的方法了!
另外一種方式是透過核心內建的驅動程式原生的支援,這當然也是最理想的方式,也是能
跨不同架構來驅動無線網路的唯一方式。然而無線網路卡晶片廠商為了競爭而留一手,或
者裏面有一些用軟體模擬的部份公開會破壞電信法規,導致他們不想釋出規格或原始碼來
提供 Linux hacker 撰寫驅動程式,這使得在 GNU/Linux 上無線網路原生支援成為一個
很大的問題。所以目前在 GNU/Linux 上很多無線網路驅動程式是用反組譯的逆向工程弄
出來的。當然也是有一些對於 GNU/Linux 友善的晶片廠商釋出規格讓 hacker 們撰寫驅
動程式。以下筆者將談及目前可以在 GNU/Linux 下原生驅動的無線網路晶片。
無線網路卡廠商一般不會像顯示卡廠商一樣標出所使用的晶片,所以我們必須要自行測試
收集各個無線網路卡所使用的晶片,而筆者會提供一些網站,供給讀者選購的時候當成參
考。當然最簡單的方式是讀者帶著您的電腦,去電腦公司,一片一片的把卡插上去試試看
,這樣就能確認哪一片能用了!
Atheros - http://madwifi.org
這款晶片的驅動程式已經內建在 Linux kernel 裏面了,在 Ubuntu 的支援性不錯。而它
是由 Atheros 公司生產。這個系列的晶片分別支援了 802.11a/g/b 三種規格。
Atmel AT76C50X - http://atmelwlandriver.sourceforge.net
這款晶片在核心內也是已經支援,不過這一系列的卡只有 802.11b 的規格。如果不嫌它
速度慢和幾乎買不到新品了,它是很好用的無線網路卡。
Broadcom BCM43xx - http://bcm43xx.berlios.de
這個驅動程式有名的地方是在這顆晶片廣泛的用在 Apple 蘋果電腦上。但是這些機器不
是 x86 平台,所以沒辦法使用 ndiswrapper 去載入 MS 的驅動程式。這激怒了一堆駭客
,終於用逆向工程破解了內部結構。目前它已經在 kernel 2.6.17 以上有包含,因此在
Ubuntu 上也可以順利的使用了。這系列晶片目前有 802.11a/b/g 三種支援。
Intel PRO/Wireless - http://ipw2200.sourceforge.net
這系列無線網卡有 Intel PRO/Wireless 2100,2200 和 2915ABG。而 2100 是支援
802.11b 的無線網卡,2200 支援 802.11bg 兩種,2915ABG 支援三種規格 802.11abg。
這幾種晶片通常是搭配 Intel Centrino 晶片組的筆記型電腦出貨,但並不一定
Centrino 晶片組的筆記型電腦就是搭配這幾種無線網卡。而這幾種無線網卡目前在
GNU/Linux 核心上有很好的支援,因此使用這些晶片的筆記型電腦都可以很容易的在
Ubuntu 的環境下無線上網。
Orinoco - http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Orinoco.html
這款晶片的驅動程式在核心內也是已經支援,不過這一系列的卡只有 802.11b 的規格。
如果不嫌它速度慢和幾乎買不到新品了,它是很好用的無線網路卡。
Prism 2, 2.5, 3, GT - http://www.linux-wlan.org
這一系列晶片所支援的規格為 802.11b,而這款的驅動程式已經在 linux kernel 裏面內
建,所以不需要安裝,只要設備插上去就可以運作了。
Prism 54 - http://prism54.org
如同其名,這一系列都是支援 802.11g 54Mbps 的無線網卡晶片。而這款驅動程式也是已
經在 linux kernel 裏面內建了。
Ralink RT2x00 - http://rt2x00.serialmonkey.com
這是一間台灣的無線網路晶片公司。他們公司對於 GNU/Linux 有親切的態度,但是公司
官方的驅動程式臭蟲很多,沒有達到實用的地步。因為官方驅動程式以 GPL 授權,所以
現在社群正在全力的幫忙改善,目前社群版的驅動程式以達到堪用的地步,並且準備未來
進入 kernel 內,那們使用者就不需要自己編譯驅動程式。這系列晶片目前有
802.11b/g 兩種支援。
(備註:目前一般使用要成功驅動還有點困難,需要自己稍微 hack 和編譯嘗試一下才可
能成功)
TI - http://acx100.sourceforge.net
這是德儀的晶片,有 802.11g 和 802.11b 不同規格。目前 Ubuntu 也已經支援它了。
Zydas - http://zd1211.ath.cx
這是台灣的公司,益勤科技。它也有 Open Source 的驅動程式。這系列晶片目前有
802.11a/b/g 三種支援,在 Ubuntu 裏面可以直接使用了唷!
還有一個麻煩的問題,就是出在無線網卡的韌體 (firmware)。一般而言,韌體裏面存放
一些控制該外部裝置的程式,也就是一般的外部硬體會有自己的處理器來作一些硬體上操
作與運算,而韌體就是負責這件事的程式。因此大部份裝置的韌體會儲存在該硬體的快閃
記憶體 (flash memory) 中,所以如果我們要更新的話,就需要透過特殊的軟體去更改那
個嵌入在硬體上的軟體。
但是目前很多無線網路卡為了降低成本,會把快閃記憶體省略掉,所以我們需要在驅動裝
置以前,把韌體從檔案載入到系統給該裝置使用。故我們在使用無線網路卡時,就得要自
己另外提供韌體才能使用。當然有一些是直接把韌體燒在硬體上的無線網卡,那就不會有
這種煩惱啦!
有些公司的韌體授權是可以讓 Ubuntu 包含該韌體在系統裏面,例如 Intel
PRO/Wireless 系列、Zydas 系列、Atmel 系列、prism 54 和 TI 系列,Ubuntu 都有提
供韌體放在 /lib/firmware 裏面。所以使用這幾種晶片的無線網路卡就不需要自己去下
載韌體,會比較方便。例如像 bcm43xx 系列就要自己另外上網路下載。
上面講了林林總總的晶片組,但我們在賣場買無線網路卡卻無法得知那是用什們晶片的,
那不就是多說了嘛?其實這些是為了下面的準備,下面有幾個參考網站,可以用晶片查廠
商型號或用廠商型號查所使用的晶片。所以建議大家先到購物網站上鎖定幾款型號,查查
看所使用的晶片是否相容。
Ubuntu 中的無線網卡實測 -
https://help.ubuntu.com/community/WifiDocs/WirelessCardsSupported
列出了目前在 Ubuntu 上經過實測的無線網卡廠牌和型號。注意『Supports network
install?』那一欄,如果是 Y 的話,代表可以在光碟開機後自動載入韌體並驅動,也代
表了是系統內建韌體的款式,所以在相容性上比較沒有問題。這可以當成一個很好的指標
。
Linux wireless LAN support - http://linux-wless.passys.nl
無線網卡型號或晶片是否支援 GNU/Linux 可以在這個網站上查詢到,且在這裡可以對個
別晶片或廠牌作交叉查詢,而標記為綠色的就是經過測試,確定可以支援原生驅動的無線
網卡,讀者可以在購買前依據這些資訊挑選。而筆者的建議是挑選那些晶片的韌體已經進
入 Ubuntu 官方的,那們您遇到的問題會比較少。
韌體資訊 - https://help.ubuntu.com/community/WifiDocs/WirelessFirmware
列出目前在 Ubuntu 裏面有內建韌體的晶片款式,可以配合上面的網址用晶片選擇要購買
的網卡廠牌和型號。
各個晶片在 Ubuntu 上的資訊 - https://wiki.ubuntu.com/WirelessChipsets
這裡包含了一些晶片的支援資訊,甚至提供非原生驅動 (透過 ndiswrapper) 是否能成功
的資訊。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.121.141.92
Linux 近期熱門文章
23
129
PTT數位生活區 即時熱門文章