如何在没有 rfkill 命令的情况下阻止 rfkill 模块硬阻止我的 wifi?

Kor*_*era 8 linux wireless-networking arch-linux linux-kernel wifi-configuration

前几天我进入了我的BIOS,没有改变任何东西,然后重新启动。在此之后,我的wifi被硬阻止了。我在网上寻找解决方案,并了解了 rfkill 命令。但我得到

rfkill: command not found
Run Code Online (Sandbox Code Playgroud)

但是,在启动消息中,我看到 rfkill 被调用以执行某些操作。我想,也许出于某种原因,它不在路径中。我确定是。(今晚我会仔细检查一下。)

我尝试在闪存驱动器上运行 Linux Mint,并且 rfkill 命令告诉我我的 wifi 被硬阻止了。除了wifi硬块,我可以解锁所有东西。

我的电脑上没有wifi开关。键盘上有一个 wifi 按钮(F12),但它什么也不做。

我想知道如何解决这个问题,但我也想知道为什么会发生这种情况。

更新!2014.10.5 我已经做了一些调查,我想分享它,以防有人发现可以解决这个问题的东西。

我仔细阅读了初学者指南,结果如下:

识别无线接口名称

$ iw dev
wlp3s0
Run Code Online (Sandbox Code Playgroud)

使用 wifi-menu 连接到网络

# wifi-menu wlp3s0
Scanning for networks... failed
No networks found
Run Code Online (Sandbox Code Playgroud)

调出界面

# ip link set wlp3s0 up                             
RTNETLINK answers: Operation not possible due to RF-kill

# rfkill list
bash: rfkill: command not found
Run Code Online (Sandbox Code Playgroud)

我在启动消息中看到提到了 rfkill,但在 dmesg 中没有。rfkill 适用于 Linux Mint 闪存驱动器。当我运行它时,它将更改除硬块之外的所有块。没有硬件开关。

显示加载的模块:

# lsmod
Run Code Online (Sandbox Code Playgroud)

产生大名单,其中包括:

rfkill                 18867  4 cfg80211,toshiba_acpi,bluetooth
iwlwifi               156837  1 iwlmvm
cfg80211              454161  3 iwlwifi,mac80211,iwlmvm

# modinfo rfkill
filename:       /lib/modules/3.16.3-1-ARCH/kernel/net/rfkill/rfkill.ko.gz
license:        GPL
description:    RF switch support
author:         Johannes Berg <johannes@sipsolutions.net>
author:         Ivo van Doorn <IvDoorn@gmail.com>
depends:        
intree:         Y
vermagic:       3.16.3-1-ARCH SMP preempt mod_unload modversions 
parm:           master_switch_mode:SW_RFKILL_ALL ON should: 0=do nothing (only unlock); 1=restore; 2=unblock all (uint)
parm:           default_state:Default initial state for all radio types, 0 = radio off (uint)
Run Code Online (Sandbox Code Playgroud)

这是否意味着默认情况下所有内容都被阻止?

如果我将 rfkill 列入黑名单会怎样?我在/etc/modprobe.d/blacklist.conf 里面创建了它说:

 #do not load this.
 blacklist rfkill
Run Code Online (Sandbox Code Playgroud)

重新启动以查看这是否有任何作用... rfkill 仍然加载。再次重新启动......收到了一系列 iwlwifi 错误:

iwlwifi 0000:03:00.0:
Failed to load firmware chunk!
Could not load the [0] uCode section
Failed to start INIT ucode: -110
Failed to run INIT ucode: -110
Run Code Online (Sandbox Code Playgroud)

我不认为这与新的 conf 文件有关,因为几天前我遇到了这个错误。它不会每次都发生。就 conf 文件而言:我猜它仍然加载,因为某些东西取决于它。如果我仍然想尝试阻止它,我可以使用我读过的安装命令。

但此时,我想我应该尝试重新安装固件吗?
除了这些,还有没有人有任何意见或想法?

小智 5

我在我的 Raspberry 上遇到了同样的问题。\xc2\xa0 一个简单的

\n\n
sudo apt-get install rfkill\n
Run Code Online (Sandbox Code Playgroud)\n\n

完成了工作。\xc2\xa0 然后我就可以使用以下命令解锁我的设备

\n\n
rfkill unblock all\n
Run Code Online (Sandbox Code Playgroud)\n


小智 0

添加这一行/etc/modprobe.d/blacklist.conf

blacklist wmi
Run Code Online (Sandbox Code Playgroud)

rfkill 将显示:

0: phy0: Wireless LAN
    Soft blocked: no
    Hard blocked: no
Run Code Online (Sandbox Code Playgroud)