如何检查当前安装的WiFi驱动程序的信息?

当我在Ubuntu 12.04上点击“附加驱动程序”时,我看不到任何驱动程序。我该如何检查在Ubuntu环境中安装了哪些WiFi驱动程序。

1请将lspci | grep -i network的输出添加到您的问题中。 - edwin
1在Linux中,要列举所有可用的设备驱动程序(即使限定在特定设备类别内)并不是真正可能的(也不是有用的)。然而,您可以列举所有能够处理特定设备的可用驱动程序,更重要的是当前“占用”该设备的驱动程序,即用于“驱动”它的驱动程序。 - David Foerster
6个回答

以下命令在终端中运行。通过按下Ctrl+Alt+T打开一个终端。
要检查您的无线适配器当前使用的驱动程序,可以运行以下命令:
sudo lshw -C network
  • lshw 列出了关于您的硬件的信息
  • -C network 过滤输出,只显示网络类别。

在输出中,寻找带有 description: 无线接口 的条目。

这是我Ubuntu的输出:

alaa@aa-lu:~$ sudo lshw -C network [sudo] password for alaa: *-network description: 无线接口 product: RTL8723AE PCIe 无线网络适配器 vendor: Realtek Semiconductor Co., Ltd. physical id: 0 bus info: pci@0000:08:00.0 logical name: wlan0 version: 00 serial: 24:ec:99:21:c9:29 width: 64 bits clock: 33MHz capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless configuration: broadcast=yes driver=rtl8723ae driverversion=3.8.0-27-generic firmware=N/A ip=192.168.1.74 latency=0 link=yes multicast=yes wireless=IEEE 802.11bgn resources: irq:17 ioport:3000(size=256) memory:c3000000-c3003fff
在最后一行的configuration中,你可以看到我当前使用的driver。我已经在输出中将其标记出来。
或者,你也可以使用以下命令:
lspci -nnk | grep -A2 0280
  • lspci 列出了关于你的PCI连接卡的信息
  • -nnk 告诉 lspci 输出更多关于这些卡的信息(包括正在使用的驱动程序)
  • | 将输出传递给下一个命令
  • grep 0280 过滤输出,显示包含 0280 的行,这是Ubuntu中无线PCI控制器的PCI类代码
  • -A2 显示两行额外的信息。

这是我在Ubuntu上的输出:

08:00.0 网络控制器 [0280]: Realtek Semiconductor Co., Ltd. RTL8723AE PCIe Wireless Network Adapter [10ec:8723]
    子系统:Realtek Semiconductor Co., Ltd. Device [10ec:0724]
    正在使用的内核驱动程序rtl8723ae

确定你正在使用的驱动程序后,可以使用以下命令显示更多相关信息:

modinfo <driver-name>

要检查您当前安装的无线驱动程序,但不一定被任何东西使用,您可以执行以下命令:
find /lib/modules/$(uname -r)/kernel/drivers/net/wireless -name '*.ko'

上述命令将列出您已安装的所有驱动程序。这可能是一个详尽无遗的列表,因为这些是预装在您的Ubuntu上的驱动程序,使得人们在安装Ubuntu后能够立即使用无线驱动程序。

1lshw -c Network的结果为:*-network UNCLAIMED 描述:网络控制器 产品:BCM43228 802.11a/b/g/n 厂商:Broadcom Corporation 物理ID:0 总线信息:pci@0000:02:00.0 版本:00 宽度:64位 时钟:33MHz 能力:pm msi pciexpress bus_master cap_list 配置:延迟=0 资源:内存:f7e00000-f7e03fff *-network 描述:以太网接口 产品:NetXtreme BCM5761 Gigabit Ethernet PCIe 厂商:Broadcom Corporation - Inderjeet
但是无线网络不工作,如何解决这个问题?我需要安装额外的驱动程序吗? - Inderjeet
我找到了两个驱动程序:1)正在使用的内核驱动程序为sdhci-pci,2)正在使用的内核驱动程序为tg3,但是无线网络仍然无法工作。 - Inderjeet
你的问题是“如何检查当前安装的WiFi驱动程序的信息?”我不知道(也没有你提到)你的无线网卡不工作。首先,请检查这个答案:http://askubuntu.com/a/60395/52726。如果你仍然无法让你的无线网卡工作,请发布另一个问题。 - Alaa Ali

以下方法包括安装额外软件,其名称为hardinfo
您可以从 USC 搜索并安装 hardinfo。
或者
从终端(CTRL+ALT+T)应用以下命令。
sudo apt-get install -y hardinfo 

从Dash(通过输入:hardinfo)中找到hardinfo,打开它,然后转到PCI设备,如果您的无线适配器是集成的PCI设备。

enter image description here

在“内核模块”旁边是指定无线适配器的当前加载驱动程序。例如图片中是“ath9k”。
如果您的无线适配器是USB设备,则转到左侧列表下的相应条目“设备”。

读取软件包列表...完成 构建依赖关系树 读取状态信息...完成 错误:无法定位软件包 hardinfo - Inderjeet
你需要启用宇宙软件源。输入 software-properties-gtk &。窗口打开后,在以"(universe)"结尾的行上打勾。完成后,在终端中运行 sudo apt-get update,然后再次尝试安装 hardinfo - Alaa Ali
仍然得到相同的信息:无法找到软件包hardinfo - Inderjeet
只是想告诉你,我的电脑上的互联网无法使用,因为我只有Wi-Fi,并且对我来说无法访问。 - Inderjeet
你的问题(正如标题所设定的)已经得到了回答。在我看来,已经完全回答了。现在如果你有其他问题,你可以开一个新的,或者在其他Ubuntu帮助台寻求帮助(ubuntuforums.org - answers.launchpad.net等)。请选择适当的答案(你认为解决了你的问题的那个),并将其点击为正确答案。 - NickTux

你还可以尝试:
ethtool -i wlan0 | grep driver 这将显示当前加载的无线网卡驱动程序,输出类似于以下内容:
uchiha@Hokage:~$ ethtool -i wlan0 | grep driver  
driver: brcmsmac 

这是我的Wi-Fi网卡驱动程序。 如果你没有ethtool,可以通过以下方式安装它:
sudo apt-get install ethtool

@P.-H.,这是我的第一个回答...我不知道如何进行格式化...我阅读了“markdown部分”以确保格式正确,但无法理解...你能否通过一个例子来解释一下? - sanjay ramrakhyani
嗨,你可以查看这篇Markdown编辑帮助文章,然后通过提出一个新问题来练习(只是不要提交,你会看到预览)。 - P.-H. Lin

你可以使用这个命令:
sudo lspci -nn -v -s your socket        

你应该放什么在“你的插座”里? - undefined

尝试使用lsmod命令检查模块r8169是否存在: 如果不存在,则通过以下命令添加: sudo modprobe r8169
这对我解决了问题。

sudo update-pciids

# lspci
## PCI
lspci
lspci | more
lspci | less
lspci | grep -i intel
lspci | grep -i broadcom
lspci | grep -i wireless
lspci -k | more
lspci | egrep -i 'wifi|wireless|intel|broadcom|realtek'

# Enter
lspci -vv -s 0c:00.0

# lshw
## list hardware, command may not be installed
lshw -C network
lshw -C network | more

# lsusb
## USB WiFi device
lsusb