【树莓派4b】移植内核后不能连接上wifi。

报错1:[FAILED] Failed to start /etc/rc.local Compatibility.
报错2:rfkill: cannot open /dev/rfkill: No such file or directory rfkill: cannot read /dev/rfkill: Bad file descriptor
错误3:显示不了wlan0

报错1:

树莓派开机时显示:
[FAILED] Failed to start /etc/rc.local Compatibility.

参考:https://blog.csdn.net/DSK_981029/article/details/120305469
解决方法:

sudo vi /etc/rc.local		#打开启动失败的rc.local文件

然后将原先第一行

#!/bin/sh -e

改为

#!/bin/bash

重启树莓派即可

报错2 、3

这两个报错是一个原因的,但发现有先后过程,所以我就分开来了
实现是发现重启树莓派后,报错1没了,但没连接上wifi,所以我们发现了错误3。

之前我在树莓派登录时网络登录的小结,总结了没有wlan0的解决方法,查看rfkill,并关闭rfkill来解决。
详情看网络登录最后小节

但我输入rfkill list
后弹出报错2:rfkill: cannot open /dev/rfkill: No such file or directory
rfkill: cannot read /dev/rfkill: Bad file descriptor

所以之前的方法行不通
经过查找大量博客后
我找到了两个可行的方法:

方法1

insmod /lib/modules/x.xx.xx/kernel/net/rfkill/rfkill.ko.xz

insmod /lib/modules/x.xx.xx/kernel/net/wireless/broadcom/brcm80211/brcmutil/brcmutil.ko.xz

insmod /lib/modules/x.xx.xx/kernel/net/wireless/cfg80211.ko.xz

insmod /lib/modules/x.xx.xx/kernel/net/wireless/broadcom/brcm80211/brcmfmac/brcmfmac.ko.xz

运行以上命令加载驱动后,再运行ifconfig便可看到wlan0,然后可以正常使用WIFI功能了。

但insmod是临时加载模块,所以在树莓派关机重启后,又需要重复上述操作,所以比较麻烦

所以我找到了方法2一劳永逸的方法

方法2

  1. 进入/lib/modules//目录,运行sudo depmod
    指的是你的内核版本号的文件比如我的就为:/5.15.92-v7l

  2. .sudo vim /etc/modules-load.d/brcmfmac.conf,输入一行内容

    brcmfmac

  3. 重启树莓派即可
    以上两个方法都来自于全军老师的博客,链接如下
    https://blog.csdn.net/weixin_49156297/article/details/127277156
    https://blog.csdn.net/weixin_49156297/article/details/127294920

你可能感兴趣的:(linux学习,linux)