银河麒麟系统需主动关闭WiFi才能省电:方法一用rfkill软封锁(rfkill block wlan),功耗降至微安级;方法二卸载驱动模块(如iwlwifi),实现网卡彻底断电。

银河麒麟系统在笔记本合盖、闲置或低电量时,若不主动关闭无线WiFi模块,网卡仍会持续扫描信道、维持AP关联、响应探测帧,导致CPU唤醒频繁、电池额外损耗——实测Intel AX200网卡在空闲状态下每小时多耗电8%~12%。必须通过系统级配置切断射频供电或卸载驱动,才能真正省电。
方法一:用rfkill软封锁禁用WiFi(即时生效,可随时恢复)
这一步操作起来很简单,直接在终端执行命令即可,无需重启或注销。rfkill是内核级开关,执行后wlan接口立即停止收发,功耗降至微安级。
打开终端(桌面右键→打开终端),运行:【rfkill block wlan】
验证是否生效:运行【rfkill list】,检查“phy0: Wireless LAN”行中“Soft blocked”是否已变为yes。若显示no,说明未成功封锁,需确认当前用户是否在netdev组中(可临时加sudo重试)。
需要恢复时,执行【rfkill unblock wlan】即可。
方法二:永久卸载无线驱动模块(彻底断电,重启后自动恢复)
此方法适用于长期不用WiFi的场景,比如将笔记本作为有线办公终端或媒体中心使用。卸载驱动后,不仅WiFi消失,连wlan0接口也不再出现在ip link列表中,网卡基带芯片完全断电。
第一步:查清当前无线网卡所用驱动
执行:【lspci -k | grep -A 3 -i wireless】 或 【lsusb | grep -i wifi && lsmod | grep -E "(iwl|rtl|ath)"】
重点看“Kernel driver in use:”后的内容,常见为
第二步:卸载驱动模块
以iwlwifi为例,执行:【sudo modprobe -r iwlwifi】
若提示“Module iwlwifi is not currently loaded”,说明已卸载或未加载;若报错“FATAL: Module iwlwifi is in use”,需先终止NetworkManager:【sudo systemctl stop NetworkManager】,再重试卸载。
第三步:阻止开机自动加载(可选,如需每次启动都禁用)
执行:【echo "blacklist iwlwifi" | sudo tee -a /etc/modprobe.d/blacklist-wifi.conf】
⚠️ 注意:此操作不可逆,重启后WiFi将完全不可见,必须手动删除该行并运行【sudo update-initramfs -u】才能恢复。
方法三:通过电源管理策略自动关闭(低电量触发,无需人工干预)
当系统电池电量低于15%时,自动关闭WiFi模块,兼顾续航与可用性。该策略依赖UPower服务,仅对笔记本有效。
方法一:启用UPower电量阈值动作
执行:【gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-battery-timeout 0】
然后创建自定义脚本:【sudo nano /usr/local/bin/lowbat-wifi-off.sh】
写入以下内容:
if [ $(upower -i /org/freedesktop/UPower/devices/battery_BAT0 | grep -E "percentage|state" | awk '/percentage/{p=$2} /state/{s=$2} END{print int(p+0.5),s}' | cut -d' ' -f1) -le 15 ] && [ "$(cat /sys/class/net/wlan0/operstate 2>/dev/null)" = "up" ]; then
rfkill block wlan
fi
保存后赋予执行权限:【sudo chmod +x /usr/local/bin/lowbat-wifi-off.sh】
再添加定时任务(每2分钟检测一次):【(crontab -l 2>/dev/null; echo "*/2 * * * * /usr/local/bin/lowbat-wifi-off.sh") | crontab -】

















