在执行系统更新之后,我突然注意到我的Raspberry Pi 4上的Wi停止工作了。没有IP地址。因此,我尝试使用dhclient wlan0获得一个新的租约(简单的DHCP配置),这会受到错误消息RTNETLINK answers: Operation not possible due to RF-kill的惩罚。
在简短的谷歌搜索之后,我找到了一个简单地清除包裹的建议和apt purge rfkill,当然我马上就跑了。现在我没有userland rfkill命令或工具了,rfkill内核模块继续重新加载,阻止我激活Wi(因此无法通过apt简单地重新安装rfkill ),我也想不出如何阻止它启动。
我所做的:
sudo systemctl disable rfkill
sudo systemctl stop rfkill
echo "rfkill" | sudo tee -a /etc/modprobe.d/raspi-blacklist.conf
sudo mv /lib/systemd/{systemd-rfkill,system/systemd-rfkill.{service,socket}} ~
echo "0" | sudo tee /var/lib/systemd/rfkill/*在/lib/systemd/system/raspberrypi-net-mods.service内部,我评论道:
#After=systemd-rfkill.service最后将systemd.restore_state=0附加到/boot/cmdline.txt:
console=serial0,115200 console=tty1 root=PARTUUID=738a4d67-02 rootfstype=ext4 rootfsflags=commit=120,data=writeback elevator=deadline noatime nodiratime data=writeback fsck.repair=yes rootwait systemd.restore_state=0重新启动后,我可以从lsmod中看到rfkill模块仍在加载,任何运行dhclient wlan0的尝试都会产生相同的原始错误消息!
那么,我如何禁用或删除rfkill和重新启用我的Wi适配器?
$ lsb_release -a
No LSB modules are available.
Distributor ID: Raspbian
Description: Raspbian GNU/Linux bullseye/sid
Release: testing
Codename: bullseye
$ uname -a
Linux jam 4.19.118-v7l+ #1311 SMP Mon Apr 27 14:26:42 BST 2020 armv7l GNU/Linux发布于 2021-01-28 23:43:35
根据Linux内核参数文档,还需要将rfkill.default_state=1参数(除了systemd.restore_state=0之外)添加到内核/boot/cmdline.txt中,以便将其设置为默认解除阻塞:
rfkill.default_state=1https://unix.stackexchange.com/questions/597292
复制相似问题