从那时起yum update
,我的 WiFi 就断开了。该命令rfkill list
返回:
0: phy0: Wireless LAN
Soft blocked: yes
Hard blocked: no
我发现我必须这样做,rmmod hp-wmi
并且我做到了,并且在执行此操作后软(在上面的输出中看到)没有被阻止,但问题仍然存在。
细节:
$ uname -a
3.15.10-200.fc20.x86_64 #1 SMP Thu Aug 14 15:39:24 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
$ iwconfig
lo no wireless extensions.
em1 no wireless extensions.
wlo1 IEEE 802.11abg ESSID:off/any
Mode:Managed Access Point: Not-Associated
Retry short limit:7 RTS thr:off Fragment thr:off
Power Management:off
$ ifconfig
em1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 88.177.227.149 netmask 255.255.255.0 broadcast 88.177.227.255
inet6 fe80::a65d:36ff:fe99:86e6 prefixlen 64 scopeid 0x20<link>
ether a4:5d:36:99:86:e6 txqueuelen 1000 (Ethernet)
RX packets 2307 bytes 1166280 (1.1 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 2666 bytes 364291 (355.7 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 17 memory 0xd0400000-d0420000
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Boucle locale)
RX packets 88 bytes 6968 (6.8 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 88 bytes 6968 (6.8 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlo1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet6 fe80::3623:87ff:fe49:df30 prefixlen 64 scopeid 0x20<link>
ether 34:23:87:49:df:30 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 19
$ lspci -k | grep -A 3 -i network
00:19.0 Ethernet controller: Intel Corporation 82579LM Gigabit Network Connection (rev 04)
Subsystem: Hewlett-Packard Company Device 176b
Kernel driver in use: e1000e
Kernel modules: e1000e
--
04:00.0 Network controller: Broadcom Corporation BCM43228 802.11a/b/g/n
Subsystem: Hewlett-Packard Company BCM943228HM4L 802.11a/b/g/n 2x2 Wi-Fi Adapter
Kernel driver in use: wl
Kernel modules: bcma, wl
注意:启动后ifconfig
返回:
em1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.20.110.67 netmask 255.255.192.0 broadcast 172.20.127.255
inet6 fe80::a65d:36ff:fe99:86e6 prefixlen 64 scopeid 0x20<link>
ether a4:5d:36:99:86:e6 txqueuelen 1000 (Ethernet)
RX packets 12485 bytes 3839676 (3.6 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 4671 bytes 974683 (951.8 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 17 memory 0xd0400000-d0420000
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Boucle locale)
RX packets 16 bytes 1504 (1.4 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 16 bytes 1504 (1.4 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
我需要去做ifconfig wlo1 up
。不管怎样都行不通。
该命令dmesg | grep wl
返回:
[ 7.751232] wl: module license 'MIXED/Proprietary' taints kernel.
[ 7.801938] systemd-udevd[494]: renamed network interface eth0 to wlo1
[ 106.820202] ERROR @wl_dev_intvar_get : error (-1)
[ 106.820208] ERROR @wl_cfg80211_get_tx_power : error (-1)
答案1
想法#1
我首先尝试获取最新的 Broadcom 驱动程序,可在此处获取:
想法#2
也许这篇博文是您的问题?标题:Broadcom Wireless 无法在 Fedora 20 Kernel 3.15 上运行。它详细介绍了 2 个错误,详细信息请参见此处:
- https://bugs.launchpad.net/ubuntu/+source/bcmwl/+bug/1307744
- https://bugs.gentoo.org/show_bug.cgi?id=513156
以及 Gentoo bug tracker 中详细介绍的补丁:
$ curl https://513156.bugs.gentoo.org/attachment.cgi?id=378836 -o patch.txt
本博客文章的其余步骤如下:
摘抄我抓住了机会,将其直接应用到
/tmp/wifi
.补丁成功并且模块编译。$ sudo yum install patch $ cd /tmp/wifi && patch -p1 < patch.txt
接下来,我需要将模块复制到 . 搜索的默认模块文件夹中
modprobe
。$ sudo mkdir /lib/modules/`uname -r`/extra/net/wireless $ sudo cp wl.ko /lib/modules/`uname -r`/extra/net/wireless $ sudo depmod -a
接下来删除可能与此冲突的任何其他软件和驱动程序。就我而言,这意味着删除 Broadcom OpenFWWF 软件包并删除 bcma 内核模块并将其列入黑名单。
$ sudo rmmod bcma $ sudo echo "blacklist bcma" >> /etc/modprobe.d/blacklist.conf $ sudo yum remove b43-openfwwf.noarch
要使用安装新模块
modprobe
$ sudo modprobe wl
为了在启动时加载模块,我只需运行
$ sudo echo modprobe wl >> /etc/rc.local
最后使用 NetworkManager 配置新设备。哦,还要感谢我的前同事 Steve 提供的笔记本电脑;-)