我有一台戴尔 Inspiron 5520,安装了 Ubuntu 16.04。我的无线网有些问题。有时网络没有响应,在网络重启或禁用/启用 Wifi 后又开始工作。但它偶尔也会停止工作。
令我好奇的是 lspci 输出中的 BCM 模型与 dmesg 不同:
$ lspci | grep BCM
08:00.0 Network controller: Broadcom Corporation BCM43142 802.11b/g/n (rev 01)
$ dmesg | grep BCM
[ 2.350917] usb 2-1.5: Product: BCM43142A0
[ 3.325396] Bluetooth: hci0: BCM: chip id 70
[ 3.345871] Bluetooth: hci0: BCM (001.001.011) build 0000
[ 3.349485] bluetooth hci0: Direct firmware load for brcm/BCM.hcd failed with error -2
[ 3.349489] Bluetooth: hci0: BCM: Patch brcm/BCM.hcd not found
[ 3.442293] wlan0: Broadcom BCM4365 802.11 Hybrid Wireless Controller 6.30.223.248 (r487574)
正如你所看到的BCM43142在 lspci 和BCM4365在 dmesg 中。这可能是问题的原因吗?
更新:
对荷尔德林评论的回应:
$ lspci -nnk | grep -i network -A2
08:00.0 Network controller [0280]: Broadcom Corporation BCM43142 802.11b/g/n [14e4:4365] (rev 01)
Subsystem: Dell Wireless 1704 802.11n + BT 4.0 [1028:0016]
Kernel driver in use: wl
$ dmesg | grep "wlan0\|wl"
[ 3.295548] wl: module license 'MIXED/Proprietary' taints kernel.
[ 3.297473] wl: module verification failed: signature and/or required key missing - tainting kernel
[ 3.442293] wlan0: Broadcom BCM4365 802.11 Hybrid Wireless Controller 6.30.223.248 (r487574)
[ 3.517031] wl 0000:08:00.0 wlp8s0: renamed from wlan0
[ 4.290537] IPv6: ADDRCONF(NETDEV_UP): wlp8s0: link is not ready
[ 612.884636] ERROR @wl_dev_intvar_get : error (-1)
[ 612.884643] ERROR @wl_cfg80211_get_tx_power : error (-1)
[ 971.996317] ERROR @wl_dev_intvar_get : error (-1)
[ 971.996323] ERROR @wl_cfg80211_get_tx_power : error (-1)
[ 984.256990] ERROR @wl_dev_intvar_get : error (-1)
[ 984.256998] ERROR @wl_cfg80211_get_tx_power : error (-1)
[ 5536.445371] IPv6: ADDRCONF(NETDEV_UP): wlp8s0: link is not ready
更新2:
感谢 Hölderlin,我发现 BCM 名称没有问题,设备 ID 也相同。另一方面,我可以通过更新无线驱动程序来解决无线问题这里。
答案1
首先,在我看来,要找到一个表格将[14e4:4365]
芯片 ID bcm43142 的给定设备 ID 与Ubuntu 中可用的驱动程序。
为了回答你的问题,我假设你是从头开始做的,并且没有更改系统中的任何配置文件、模块或驱动程序。所以我猜问题是可用软件包列表不是最新的,因为你安装的驱动程序来自2014:
sudo apt-get update
sudo apt-get install linux-image-$(uname -r|sed 's,[^-]*-[^-]*-,,') linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,') broadcom-sta-dkms
正如我在评论中提到的那样,查看已经加载了哪些模块(的输出)也会很有帮助lsmod
,因为建议卸载冲突的模块和黑名单它们。因此,如果您将这些信息添加到您的问题中,其他用户就可以比较这些模块。您还可以清除第一个更新部分上方的代码片段。您不必关心您的编辑,因为有一个版本控制,它会将所有编辑注册到系统中,如果您单击“编辑”,您就可以看到。