树莓派3B+降低功耗及恢复脚本
降低功耗
#!/bin/bash# 关闭HDMI输出
sudo /usr/bin/tvservice -o# 关闭WiFi
sudo iwconfig wlan0 power off
sudo ifconfig wlan0 down
sudo rfkill block wifi# 关闭蓝牙
sudo systemctl stop bluetooth
sudo rfkill block bluetooth# 禁用USB控制器(保留USB键盘用于唤醒)
for usb in /sys/bus/usb/devices/usb*/power/control; doecho "auto" | sudo tee $usb > /dev/null
done
# 禁用所有USB控制器
echo "1-1" | sudo tee /sys/bus/usb/drivers/usb/unbind >/dev/null 2>&1
echo "1.1" | sudo tee /sys/bus/usb/drivers/usb/unbind >/dev/null 2>&1
sudo modprobe -r ehci_hcd
sudo modprobe -r ohci_hcd
sudo modprobe -r xhci_hcd
sudo modprobe -r usbhid
sudo modprobe -r usb_storage
echo "所有USB控制器已禁用"
echo "已进入低功耗模式: HDMI、WiFi、蓝牙已关闭,USB进入自动管理状态"
恢复功耗
#!/bin/bash# 开启HDMI输出
sudo /usr/bin/tvservice -p
export DISPLAY=:0
sleep 2
xset dpms force on# 启用WiFi
sudo rfkill unblock wifi
sudo ifconfig wlan0 up
sudo iwconfig wlan0 power on# 启用蓝牙
sudo rfkill unblock bluetooth
sudo systemctl start bluetooth# 启用所有USB设备
for usb in /sys/bus/usb/devices/usb*/power/control; doecho "on" | sudo tee $usb > /dev/null
done
# 重新启用USB控制器
echo "1-1" | sudo tee /sys/bus/usb/drivers/usb/bind >/dev/null 2>&1
echo "1.1" | sudo tee /sys/bus/usb/drivers/usb/bind >/dev/null 2>&1
sudo modprobe ehci_hcd
sudo modprobe ohci_hcd
sudo modprobe xhci_hcd
sudo modprobe usbhid
sudo modprobe usb_storage
echo "USB控制器已重新启用"
echo "已恢复正常模式: HDMI、WiFi、蓝牙已启用,USB设备已激活"
