我知道关于这个问题有很多帖子,但是我关注了很多,但都没有用。
2013 年末,我使用 rufus 在 macbook pro 的 live usb 上安装了 ubuntu 20.04。过了一会儿,我注意到驱动程序默认存在,但是:它只能工作一次。下面是我让它工作一次的方法:我通过单击桌面上的图标进行安装,直到它询问在哪里进行安装 -> wifi 一直工作到重启。另一种方法是进入附加驱动程序面板,禁用它,重启,启用它 -> wifi 一直工作到重启。
我不知道它为什么在那里并且不起作用......
我还尝试了 b43 固件安装程序,并按照其他线程操作,但没有任何效果。
ubuntu 20.04.3 lts 中建议的命令:
lsmod | grep -e b43 -e wl
wl 6455296 0
cfg80211 888832 1 wl
和
grep -e b43 -e wl /etc/modprobe.d/*
/etc/modprobe.d/blacklist-bcm43.conf:# Warning: This file is autogenerated by bcmwl. All changes to this file will be lost.
/etc/modprobe.d/blacklist-bcm43.conf:blacklist b43
/etc/modprobe.d/blacklist-bcm43.conf:blacklist b43legacy
/etc/modprobe.d/blacklist.conf:# replaced by b43 and ssb.
/etc/modprobe.d/iwlwifi.conf:# /etc/modprobe.d/iwlwifi.conf
/etc/modprobe.d/iwlwifi.conf:# iwlwifi will dyamically load either iwldvm or iwlmvm depending on the
/etc/modprobe.d/iwlwifi.conf:# microcode file installed on the system. When removing iwlwifi, first
/etc/modprobe.d/iwlwifi.conf:# remove the iwl?vm module and then iwlwifi.
/etc/modprobe.d/iwlwifi.conf:remove iwlwifi \
/etc/modprobe.d/iwlwifi.conf:(/sbin/lsmod | grep -o -e ^iwlmvm -e ^iwldvm -e ^iwlwifi | xargs /sbin/rmmod) \
和
sudo dmesg | grep wl
[ 59.790911] wl: loading out-of-tree module taints kernel.
[ 59.790920] wl: module license 'MIXED/Proprietary' taints kernel.
[ 59.793410] wl: module verification failed: signature and/or required key missing - tainting kernel
和
sudo dmesg | grep -e wl -e bcma
[ 1.141227] bcma-pci-bridge 0000:03:00.0: bus0: Found chip with id 0x4360, rev 0x03 and package 0x00
[ 1.141271] bcma-pci-bridge 0000:03:00.0: bus0: Core 0 found: ChipCommon (manuf 0x4BF, id 0x800, rev 0x2B, class 0x0)
[ 1.141296] bcma-pci-bridge 0000:03:00.0: bus0: Core 1 found: IEEE 802.11 (manuf 0x4BF, id 0x812, rev 0x2A, class 0x0)
[ 1.141342] bcma-pci-bridge 0000:03:00.0: bus0: Core 2 found: ARM CR4 (manuf 0x4BF, id 0x83E, rev 0x02, class 0x0)
[ 1.141392] bcma-pci-bridge 0000:03:00.0: bus0: Core 3 found: PCIe Gen2 (manuf 0x4BF, id 0x83C, rev 0x01, class 0x0)
[ 1.141417] bcma-pci-bridge 0000:03:00.0: bus0: Core 4 found: USB 2.0 Device (manuf 0x4BF, id 0x81A, rev 0x11, class 0x0)
[ 1.196936] bcma: Unsupported SPROM revision: 11
[ 1.197064] bcma-pci-bridge 0000:03:00.0: bus0: Invalid SPROM read from the PCIe card, trying to use fallback SPROM
[ 1.197070] bcma-pci-bridge 0000:03:00.0: bus0: Using fallback SPROM failed (err -2)
[ 1.197075] bcma-pci-bridge 0000:03:00.0: bus0: No SPROM available
[ 1.200300] bcma-pci-bridge 0000:03:00.0: bus0: Bus registered
[ 45.291300] wl: loading out-of-tree module taints kernel.
[ 45.291307] wl: module license 'MIXED/Proprietary' taints kernel.
[ 45.293675] wl: module verification failed: signature and/or required key missing - tainting kernel
和
journalctl -b | grep bcma
déc 19 19:11:03 ubuntu kernel: bcma-pci-bridge 0000:03:00.0: bus0: Found chip with id 0x4360, rev 0x03 and package 0x00
déc 19 19:11:03 ubuntu kernel: bcma-pci-bridge 0000:03:00.0: bus0: Core 0 found: ChipCommon (manuf 0x4BF, id 0x800, rev 0x2B, class 0x0)
déc 19 19:11:03 ubuntu kernel: bcma-pci-bridge 0000:03:00.0: bus0: Core 1 found: IEEE 802.11 (manuf 0x4BF, id 0x812, rev 0x2A, class 0x0)
déc 19 19:11:03 ubuntu kernel: bcma-pci-bridge 0000:03:00.0: bus0: Core 2 found: ARM CR4 (manuf 0x4BF, id 0x83E, rev 0x02, class 0x0)
déc 19 19:11:03 ubuntu kernel: bcma-pci-bridge 0000:03:00.0: bus0: Core 3 found: PCIe Gen2 (manuf 0x4BF, id 0x83C, rev 0x01, class 0x0)
déc 19 19:11:03 ubuntu kernel: bcma-pci-bridge 0000:03:00.0: bus0: Core 4 found: USB 2.0 Device (manuf 0x4BF, id 0x81A, rev 0x11, class 0x0)
déc 19 19:11:03 ubuntu kernel: bcma: Unsupported SPROM revision: 11
déc 19 19:11:03 ubuntu kernel: bcma-pci-bridge 0000:03:00.0: bus0: Invalid SPROM read from the PCIe card, trying to use fallback SPROM
déc 19 19:11:03 ubuntu kernel: bcma-pci-bridge 0000:03:00.0: bus0: Using fallback SPROM failed (err -2)
déc 19 19:11:03 ubuntu kernel: bcma-pci-bridge 0000:03:00.0: bus0: No SPROM available
déc 19 19:11:03 ubuntu kernel: bcma-pci-bridge 0000:03:00.0: bus0: Bus registered
调试脚本日志:https://pastebin.ubuntu.com/p/ZhR4QRSpDp/
21.10中完成的命令:
驱动程序最初未在附加驱动程序窗口中启用。我启用了它,工作正常,直到重新启动。然后,我尝试删除 bcma,以防万一,但没有任何变化。
sudo dmesg | grep bcma
[ 1.496684] bcma-pci-bridge 0000:03:00.0: bus0: Found chip with id 0x4360, rev 0x03 and package 0x00
[ 1.496731] bcma-pci-bridge 0000:03:00.0: bus0: Core 0 found: ChipCommon (manuf 0x4BF, id 0x800, rev 0x2B, class 0x0)
[ 1.496757] bcma-pci-bridge 0000:03:00.0: bus0: Core 1 found: IEEE 802.11 (manuf 0x4BF, id 0x812, rev 0x2A, class 0x0)
[ 1.496802] bcma-pci-bridge 0000:03:00.0: bus0: Core 2 found: ARM CR4 (manuf 0x4BF, id 0x83E, rev 0x02, class 0x0)
[ 1.496851] bcma-pci-bridge 0000:03:00.0: bus0: Core 3 found: PCIe Gen2 (manuf 0x4BF, id 0x83C, rev 0x01, class 0x0)
[ 1.496876] bcma-pci-bridge 0000:03:00.0: bus0: Core 4 found: USB 2.0 Device (manuf 0x4BF, id 0x81A, rev 0x11, class 0x0)
[ 1.555428] bcma: Unsupported SPROM revision: 11
[ 1.555512] bcma-pci-bridge 0000:03:00.0: bus0: Invalid SPROM read from the PCIe card, trying to use fallback SPROM
[ 1.555515] bcma-pci-bridge 0000:03:00.0: bus0: Using fallback SPROM failed (err -2)
[ 1.555518] bcma-pci-bridge 0000:03:00.0: bus0: No SPROM available
[ 1.559096] bcma-pci-bridge 0000:03:00.0: bus0: Bus registered
答案1
我如何让它发挥作用
经过很多麻烦之后,我想我找到了一个临时解决办法。
在 Ubuntu 21.10 上
步骤1 :
在驱动程序管理器 -> 附加驱动程序 -> 启用 Broadcom 802.11 bcmwl-kernel-source
一直有效直至重启。
第 2 步(重启后)
Wifi 无法使用,可能是因为驱动程序冲突。禁用所有驱动程序:
sudo modprobe -r wl
sudo modprobe -r bcma
sudo modprobe -r b43
sudo modprobe -r brcmsmac
此后,逐一尝试启用它们:
sudo modprobe wl
这是对我有用的一个。
问题
每次重启后我都必须这样做,因为这些更改不会保存。我知道有带黑名单选项的 .conf 文件,但我不知道要更改哪一个。
答案2
/etc/modprobe.d/blacklist.conf
这个有点晚了,但是我通过编辑以下行(虽然如果你愿意的话,你可以制作自己的黑名单文件)使它工作:
blacklist bcma
按照上面的@Infamous Jox,我发现这样做modprobe -r bcma wl
可以modprobe wl
使其正常工作。
你还需要运行
sudo update-initramfs -u
以使黑名单生效。