最早家中装修时没有考虑到每个房间都要布网线的问题,导致现在我的卧室里只能使用无线网卡上网。
这2天心血来潮把家里唯一的一台用作Desktop的台式机改装了Ubuntu 10.04,无线网卡的驱动就成了一个问题,下午google了半天终于搞定了!
使用ndiswrapper软件可以直接在Linux上利用Windows上的无线网卡驱动,我们可以从Ubuntu的官网上下载到该软件包;包括三个部分:
分别安装以上三个软件包后,主菜单System->Administration菜单中会出现Windows Wireless Drivers的选项:
因为我们使用的DWA 130 USB无线网卡采用的是RTL8192U的芯片,所以我们还需要下载Windows版的RTL8192U驱动软件,注意目前ndiswrapper软件似乎默认只支持Windows XP版的驱动,如果你下载的是Windows 7/Vista版的驱动可能会无法正常工作。下载到的驱动一般是exe可执行文件的形式,我们就需要在Windows上执行该exe文件,尝试将驱动安装软件的目录解压出来:
$ pwd /media/OUTDISK/driver/RTL8192U_WindowsDriver_5.1363.0305.2009.F1034.P1106_UI_1.01.0091/RTL8192U_Driver/WinXP2K $ cat net8192u.inf ;; net8192u.inf ;; ;; Realtek RTL8192U Wireless 802.11n USB 2.0 Network Adapter ;; ;; Copyright (C) 2008 Realtek Semiconductor Corp. ;; ;; this release is primarily for WHQL test. ;; [Version] Signature = "$Chicago$" Compatible = 1 Class = Net ClassGUID = {4d36e972-e325-11ce-bfc1-08002be10318} Provider = %Realtek% CatalogFile.NT = net8192u.cat ;; for WHQL certified DriverVer = 03/05/2009,5.1363.0305.2009 [Manufacturer] %Realtek% = Realtek,NTx86 %Corega% = Corega,NTx86 %Belkin% = Belkin,NTx86 %Sitecom% = Sitecom,NTx86 %EnGenius% = EnGenius,NTx86 %DLink% = DLink,NTx86 %Zinwell% = Zinwell,NTx86 %Amigo% = Amigo,NTx86 [ControlFlags] ;ExcludeFromSelect = USB\VID_0BDA&PID_8192&REV_0100 ExcludeFromSelect = * ;;**************************************************************************** ;; IDs for X86 ;;**************************************************************************** [Realtek.NTx86] %RTL8192u.DeviceDesc% = RTL8192u.ndi, USB\VID_0BDA&PID_8192&REV_0100 [Corega.NTx86] %CG-WLUSB300N.DeviceDesc% = Corega.ndi, USB\VID_07AA&PID_0043 [Belkin.NTx86] %Belkin.DeviceDesc% = RTL8192u.ndi, USB\VID_050D&PID_805E [Sitecom.NTx86] %Sitecom.DeviceDesc% = RTL8192u.ndi, USB\VID_0DF6&PID_0031 [EnGenius.NTx86] %EnGenius.DeviceDesc% = RTL8192u.ndi, USB\VID_1740&PID_9201 [DLink.NTx86] %DLink.DeviceDesc% = RTL8192u.ndi, USB\VID_2001&PID_3301 [Zinwell.NTx86] %Zinwell.DeviceDesc% = RTL8192u.ndi, USB\VID_5A57&PID_0290 [Amigo.NTx86] %Amigo.DeviceDesc% = RTL8192u.ndi, USB\VID_0E0B&PID_9051 ;;**************************************************************************** ;; IDs for X64 ;;**************************************************************************** [Realtek.NTamd64] %RTL8192u.DeviceDesc% = RTL8192u.ndi, USB\VID_0BDA&PID_8192&REV_0100 [Corega.NTamd64] %CG-WLUSB300N.DeviceDesc% = Corega.ndi, USB\VID_07AA&PID_0043 [Belkin.NTamd64] %Belkin.DeviceDesc% = RTL8192u.ndi, USB\VID_050D&PID_805E [Sitecom.NTamd64] %Sitecom.DeviceDesc% = RTL8192u.ndi, USB\VID_0DF6&PID_0031 [EnGenius.NTamd64] %EnGenius.DeviceDesc% = RTL8192u.ndi, USB\VID_1740&PID_9201 [DLink.NTamd64] %DLink.DeviceDesc% = RTL8192u.ndi, USB\VID_2001&PID_3301 [Zinwell.NTamd64] %Zinwell.DeviceDesc% = RTL8192u.ndi, USB\VID_5A57&PID_0290 [Amigo.NTamd64] %Amigo.DeviceDesc% = RTL8192u.ndi, USB\VID_0E0B&PID_9051 ;;**************************************************************************** ;; IDs for 98SE/ME/2K/XP ;;**************************************************************************** [Realtek] %RTL8192u.DeviceDesc% = RTL8192u.ndi, USB\VID_0BDA&PID_8192&REV_0100 [Corega] %CG-WLUSB300N.DeviceDesc% = Corega.ndi, USB\VID_07AA&PID_0043 [Belkin] %Belkin.DeviceDesc% = RTL8192u.ndi, USB\VID_050D&PID_805E [Sitecom] %Sitecom.DeviceDesc% = RTL8192u.ndi, USB\VID_0DF6&PID_0031 [EnGenius] %EnGenius.DeviceDesc% = RTL8192u.ndi, USB\VID_1740&PID_9201 [DLink] %DLink.DeviceDesc% = RTL8192u.ndi, USB\VID_2001&PID_3301 [Zinwell] %Zinwell.DeviceDesc% = RTL8192u.ndi, USB\VID_5A57&PID_0290 [Amigo] %Amigo.DeviceDesc% = RTL8192u.ndi, USB\VID_0E0B&PID_9051 ;;**************************************************************************** ;; Windows 98SE/ME ;;**************************************************************************** [RTL8192u.ndi] DriverVer = 03/05/2009,5.1363.0305.2009 AddReg = RTL8192u.win.reg, RTL8192u.common.reg, RTLWLAN.reg, Realtek.reg CopyFiles = RTL8192u.CopyFiles98 [Corega.ndi] DriverVer = 03/05/2009,5.1363.0305.2009 AddReg = RTL8192u.win.reg, RTL8192u.common.reg, RTLWLAN.reg, Corega.reg CopyFiles = RTL8192u.CopyFiles98 ;;**************************************************************************** ;; Windows 2000/XP ;;**************************************************************************** [RTL8192u.ndi.NT] AddReg = RTL8192u.nt5.reg, RTL8192u.common.reg, RTLWLAN.reg, Realtek.reg Characteristics = 0x84 BusType = 15 CopyFiles = RTL8192u.CopyFiles [Corega.ndi.NT] AddReg = RTL8192u.nt5.reg, RTL8192u.common.reg, RTLWLAN.reg, Corega.reg Characteristics = 0x84 BusType = 15 CopyFiles = RTL8192u.CopyFiles [RTL8192u.ndi.NT.Services] AddService = RTL8192u, 2, RTL8192u.nt5.Service, RTL8192u.nt5.EventLog [Corega.ndi.NT.Services] AddService = RTL8192u, 2, RTL8192u.nt5.Service, RTL8192u.nt5.EventLog ;;---------------------------------------------------------------------------- ;; RTL8192u Parameters ;;---------------------------------------------------------------------------- ;;*************************************************************************** ;; Windows 98SE/ME Parameters ;;*************************************************************************** [RTL8192u.win.reg] HKR, Ndi, DeviceID, 0, USB\VID_0BDA&PID_8192&REV_0100 HKR,Ndi,CardType,,"PNP" HKR, , DriverDesc, 0, "Realtek RTL8192u Wireless 802.11 USB 2.0 Network Adapter" HKR, , DevLoader,,*ndis,*ntkern,*ndis HKR, , DeviceVxDs,,RTL8192u.sys HKR, , EnumPropPages, 0, netdi.dll, EnumPropPages ; NDIS Info HKR,NDIS,MajorNdisVersion,1,03 HKR,NDIS,MinorNdisVersion,1,0a HKR,NDIS,LogDriverName,,RTL8192u ; Interfaces HKR,Ndi\Interfaces,DefLower,,"ethernet" HKR,Ndi\Interfaces,LowerRange,,"ethernet" HKR,Ndi\Interfaces,DefUpper,,"ndis3" HKR,Ndi\Interfaces,UpperRange,,"ndis3" ;;**************************************************************************** ;; Windows 2000/XP parameters ;;**************************************************************************** [RTL8192u.nt5.reg] HKR, Ndi\Interfaces, UpperRange, 0, "ndis5,mdcwifi,wifipro" HKR, Ndi\Interfaces, LowerRange, 0, "ethernet" HKR, Ndi, Service, 0, "RTL8192u" [RTL8192u.nt5.Service] DisplayName = %RTL8192u.DeviceDesc.DispName% ServiceType = 1 ; %SERVICE_KERNEL_DRIVER% StartType = 3 ; %SERRVICE_DEMAND_START% ErrorControl = 1 ; %SERRVICE_ERROR_NORMAL% ServiceBinary = %12%\RTL8192u.sys LoadOrderGroup = NDIS [RTL8192u.nt5.EventLog] AddReg = RTL8192u.nt5.AddEventLog.reg [RTL8192u.nt5.AddEventLog.reg] HKR, , EventMessageFile, 0x00020000, "%%SystemRoot%%\System32\netevent.dll" HKR, , TypesSupported , 0x00010001, 7 ;******************************************************************************* ; RTL8192u common paramters ;******************************************************************************* [RTL8192u.common.reg] HKR,Ndi\params\LedCtrl, ParamDesc, 0, %LED_CONTROL_STR% HKR,Ndi\params\LedCtrl, type, 0, "enum" HKR,Ndi\params\LedCtrl, default, 0, "1" HKR,Ndi\params\LedCtrl\enum, "0", 0, "Disable" HKR,Ndi\params\LedCtrl\enum, "1", 0, "Enable" HKR,defaults,LedCtrl,0,"1" HKR,,LedCtrl,0,"1" HKR,Ndi\params\WiFi11bIbss, ParamDesc, 0, %WIFI_IBSS_STR% HKR,Ndi\params\WiFi11bIbss, type, 0, "enum" HKR,Ndi\params\WiFi11bIbss, default, 0, "0" HKR,Ndi\params\WiFi11bIbss\enum, "0", 0, "Disable" HKR,Ndi\params\WiFi11bIbss\enum, "1", 0, "Enable" HKR,defaults,WiFi11bIbss,0,"0" HKR,,WiFi11bIbss,0,"0" HKR,Ndi\params\CcxRm, ParamDesc, 0, %CCX_RM_STR% HKR,Ndi\params\CcxRm, type, 0, "enum" HKR,Ndi\params\CcxRm, default, 0, "1" HKR,Ndi\params\CcxRm\enum, "0", 0, "Disable" HKR,Ndi\params\CcxRm\enum, "1", 0, "Enable" HKR,defaults,CcxRm,0,"1" HKR,,CcxRm,0,"1" HKR,Ndi\params\CcxOffLineDurUpLimit, ParamDesc, 0, %CCX_OFF_LINE_DUR_UP_LIMIT_STR% HKR,Ndi\params\CcxOffLineDurUpLimit, type, 0, "word" HKR,Ndi\params\CcxOffLineDurUpLimit, default, 0, "0" HKR,Ndi\params\CcxOffLineDurUpLimit, min, 0, "0" HKR,Ndi\params\CcxOffLineDurUpLimit, max, 0, "65535" HKR,Ndi\params\CcxOffLineDurUpLimit, step, 0, "1" HKR,Ndi\params\CcxOffLineDurUpLimit, base, 0, "10" HKR,defaults,CcxOffLineDurUpLimit,0,"0" HKR,,CcxOffLineDurUpLimit,0,"0" ;;---------------------------------------------------------------------------- ;; Realtek WLAN NIC parameters ;;---------------------------------------------------------------------------- [RTLWLAN.reg] HKR,Ndi\params\SSID, ParamDesc, 0, %SSID_STR% HKR,Ndi\params\SSID, type, 0, "edit" HKR,Ndi\params\SSID, default, 0, "ANY" HKR,Ndi\params\SSID, LimitText, 0, "32" HKR,defaults,SSID,0,"ANY" HKR,,SSID,0,"ANY" HKR,Ndi\params\NetworkType, ParamDesc, 0, %NETWORK_TYPE_STR% HKR,Ndi\params\NetworkType, type, 0, "enum" HKR,Ndi\params\NetworkType, default, 0, "1" HKR,Ndi\params\NetworkType\enum, "0", 0, "Ad Hoc" HKR,Ndi\params\NetworkType\enum, "1", 0, "Infrastructure" HKR,Ndi\params\NetworkType\enum, "2", 0, "Auto select" HKR,defaults,NetworkType,0,"1" HKR,,NetworkType,0,"1" HKR,NDI\params\PowerSaveMode, ParamDesc, 0, %POWER_SAVE_STR% HKR,NDI\params\PowerSaveMode, type, 0, "enum" HKR,Ndi\params\PowerSaveMode, default, 0, "0" HKR,NDI\params\PowerSaveMode\enum, "0", 0, "CAM" HKR,NDI\params\PowerSaveMode\enum, "1", 0, "MAX_PSP" HKR,NDI\params\PowerSaveMode\enum, "2", 0, "Fast_PSP" HKR,defaults,PowerSaveMode,0,"0" HKR,,PowerSaveMode,0,"0" HKR,Ndi\params\StaUapsd, ParamDesc, 0, %WMM_APSD% HKR,Ndi\params\StaUapsd, type, 0, "enum" HKR,Ndi\params\StaUapsd, default, 0, "0" HKR,Ndi\params\StaUapsd\enum, "0", 0, "No AC (Disable)" HKR,Ndi\params\StaUapsd\enum, "15", 0, "ALL AC" HKR,defaults,StaUapsd,0,"0" HKR,,StaUapsd,0,"0" HKR,Ndi\params\PSPXlinkMode, ParamDesc, 0, %PSP_XLINK_STR% HKR,Ndi\params\PSPXlinkMode, type, 0, "enum" HKR,Ndi\params\PSPXlinkMode, default, 0, "0" HKR,Ndi\params\PSPXlinkMode\enum, "0", 0, "Disable" HKR,Ndi\params\PSPXlinkMode\enum, "1", 0, "Enable" HKR,defaults,PSPXlinkMode,0,"0" HKR,,PSPXlinkMode,0,"0" HKR,,HalfNMode,0,"1" HKR,,DefaultKeyID,,"0" HKR,,DefaultKey0,,"" HKR,,DefaultKey1,,"" HKR,,DefaultKey2,,"" HKR,,DefaultKey3,,"" [Realtek.reg] HKR,Ndi\params\Channel, ParamDesc, 0, %CHANNEL_STR% HKR,Ndi\params\Channel, type, 0, "int" HKR,Ndi\params\Channel, default, 0, "1" HKR,Ndi\params\Channel, Min, 0, "1" HKR,Ndi\params\Channel, Max, 0, "14" HKR,Ndi\params\Channel, Step, 0, "1" HKR,Ndi\params\Channel, Base, 0, "10" HKR,defaults,Channel,0,"1" HKR,,Channel,0,"1" [Corega.reg] HKR,Ndi\params\Channel, ParamDesc, 0, %CHANNEL_STR% HKR,Ndi\params\Channel, type, 0, "int" HKR,Ndi\params\Channel, default, 0, "1" HKR,Ndi\params\Channel, Min, 0, "1" HKR,Ndi\params\Channel, Max, 0, "13" HKR,Ndi\params\Channel, Step, 0, "1" HKR,Ndi\params\Channel, Base, 0, "10" HKR,defaults,Channel,0,"1" HKR,,Channel,0,"1" ;******************************************************************************* ; Destination Directory ;******************************************************************************* [RTL8192u.CopyFiles] RTL8192u.sys,,,2 [RTL8192u.CopyFiles98] RTL8192u.sys,,,2 [DestinationDirs] RTL8192u.CopyFiles98 = 11 RTL8192u.CopyFiles = 12 ;;**************************************************************************** ;; Source Files ;;**************************************************************************** [SourceDisksFiles] RTL8192u.sys = 1 [SourceDisksNames] 1=%DISKNAME%,,, ;******************************************************************************* ; Strings ;******************************************************************************* [Strings] Realtek = "Realtek Semiconductor Corp." ProvideCorega = "corega K.K." SSID_STR = "SSID" CHANNEL_STR = "Channel" NETWORK_TYPE_STR = "Network Type" LED_CONTROL_STR = "LED Control" POWER_SAVE_STR = "Power Save Mode" WIFI_IBSS_STR = "IBSS Default 11b Mode" RATE_ADAPTIVE_STR = "Rate Adaptive" QOS_STR = "QoS" WMM_APSD = "WMM APSD" CCX_RM_STR = "CCX Radio Measurement" CCX_OFF_LINE_DUR_UP_LIMIT_STR = "CCX Max Off-Line Measurement (0: unlimited)" FORCE_PRIORITY_STR = "Forced Priority" HW_PARA_STR = "Init from HwParaFile" THREE_WIRE_MODE_STR = "Three Wire Programming Mode" BOARD_TYPE_STR = "Board Type" PROTECTION_MODE_STR = "Protection Mode" TPC_STR = "Transmit Power Control" TPC_POLARITY_STR = "TPC Polarity Select" HIGH_POWER_STR = "High Power Mechanism" INIT_GAIN_STR = "Initial Gain State" CW_MAX_MIN_STR = "Contention Window" PSP_XLINK_STR = "PSP XLink Mode" Corega = "corega K.K." Belkin = "Belkin Corporation" Sitecom = "Sitecom" EnGenius = "EnGenius Technologies" DLink = "D-Link Corporation" Zinwell = "Zinwell Corporation" Amigo = "Amigo Technology Inc." ;; Source disk name DISKNAME = "Realtek RTL8192U Wireless LAN 802.11n USB 2.0 Network Adapter Driver Disk" RTL8192u.DeviceDesc = "Realtek RTL8192U Wireless LAN 802.11n USB 2.0 Network Adapter" RTL8192u.DeviceDesc.DispName = "Realtek RTL8192U Wireless LAN 802.11n USB 2.0 Network Adapter" CG-WLUSB300N.DeviceDesc = "CG-WLUSB300N" CG-WLUSB300N.DeviceDesc.DispName = "CG-WLUSB300N" Belkin.DeviceDesc = "Belkin F5D8053 N Wireless USB Adapter" Belkin.DeviceDesc.DispName = "Belkin F5D8053 N Wireless USB Adapter" Sitecom.DeviceDesc = "Wireless Network 300N USB dongle WL-314" Sitecom.DeviceDesc.DispName = "Wireless Network 300N USB dongle WL-314" EnGenius.DeviceDesc = "EnGenius 802.11n Wireless USB Adapter" EnGenius.DeviceDesc.DispName = "EnGenius 802.11n Wireless USB Adapter" DLink.DeviceDesc = "D-Link DWA-130 Wireless N USB Adapter(rev.C)" DLink.DeviceDesc.DispName = "D-Link DWA-130 Wireless N USB Adapter(rev.C)" Zinwell.DeviceDesc = "802.11b/g/n USB Wireless LAN Card" Zinwell.DeviceDesc.DispName = "802.11b/g/n USB Wireless LAN Card" Amigo.DeviceDesc = "802.11n wireless USB card" Amigo.DeviceDesc.DispName = "802.11n wireless USB card" $
之后需要完成对驱动信息文件*.ini的配置:
gksu /usr/sbin/ndisgtk 点击Install New Driver出现选择以上ini信息文件的对话框:
全部完成后,一般Ubuntu就能正确识别该无线网卡设备了,如仍无法识别可以尝试拔插或重启再试;点击Configure Network进一步配置无线连接后,就可以看到环境周围了可用无线连接了:
Comment