我正在嘗試在 Ubuntu 11.10 中為我的網路 USB 裝置找到最合適的驅動程式。首先,我可以在哪裡檢查 ubuntu 用於控制該設備的驅動程式?它在網路工具中顯示為無線介面(wlan1),但除了 MAC 位址和一些有關資料傳輸的統計資訊外,沒有有關驅動程式的資訊。
我已經安裝了aircrack-ng,它提供了幾個掃描網路的選項。在終端機中運行airmon-ng start wlan1
我得到以下資訊:
Interface Chipset Driver
eth1 Unknown wl
wlan1 Unknown rt2800usb - [phy2]
(monitor mode enabled on mon0)
無線適配器為TP-LINK型號TL-WN7200ND,無線面板讀取為RaLink適配器。似乎rt2800usb是適配器的驅動程序,但是這個設備有更強大的驅動程序嗎?
答案1
透過四處閒逛,您可以獲得很多很酷的資訊/sys
。/sys/class
包含您的 Linux 安裝能夠處理的每一類裝置的條目。驅動程式資訊可在此路徑找到:
$ ls /sys/class/net/wlan0/device/driver/module/drivers
pci:ath5k@
我的無線網卡名為 wlan0,使用的是 ath5k 驅動程式。這是我的一張乙太網路卡的驅動程式資訊:
$ ls /sys/class/net/eth1/device/driver/module/drivers
pci:forcedeth@
順便說一句,Ubuntu(像大多數 Linux 發行版一樣)包含裝置驅動程式作為核心模組。核心是運行電腦硬體的重要軟體。 Ubuntu 根據它感知到的硬體來載入模組。您可以透過執行以下命令來取得已載入模組的清單:lsmod
。這是我的 lsmod 輸出的片段:
bluetooth 130968 0
ath5k 127724 0
ath 11990 1 ath5k
eeepc_laptop 12412 0
sparse_keymap 2660 1 eeepc_laptop
mac80211 196283 1 ath5k
pci_hotplug 22072 1 eeepc_laptop
cfg80211 142540 3 ath5k,ath,mac80211
rfkill 12470 3 bluetooth,eeepc_laptop,cfg80211
crc16 1091 2 bluetooth,ext4
左欄是已載入模組的列表,最右欄顯示它們依序使用的模組。可以看到,這些都使用了ath5k模組或與ath5k模組相關。
答案2
如果Ubuntu找到了驅動程式並且您可以上網,我認為您不應該更改它。要找出正在使用的驅動程序,請參閱 djeikyb 的帖子,或參見下文。
如果 Ubuntu 沒有找到驅動程序,您應該先讓 Ubuntu 搜尋它。為此,您啟動“系統設定”並啟動“硬體驅動程式”。這樣就可以完成工作了。此方法也是查看目前使用的(專有)驅動程式的簡單方法。
困難的方法是識別 USB-WiFi 的晶片組並使用此資訊進行搜索
為此,您需要發出命令“lsusb”。打開 gnome 終端並輸入“lsusb”(不含引號)。你應該看到這樣的東西:
$ Bus 002 Device 003: ID 064e:a103 Suyin Corp. Acer/HP Integrated Webcam [CN0314]
這是我的網路攝影機,我的 WiFi 卡可以透過「lspci」識別。
根據資訊(根據上面的範例:供應商 064e - Suyin Corp. 和產品 a103 - Acer/HP 整合網路攝影機),您應該能夠精確搜尋所需的驅動程式。