![根据电池电量关闭 Linux 计算机](https://linux22.com/image/1488028/%E6%A0%B9%E6%8D%AE%E7%94%B5%E6%B1%A0%E7%94%B5%E9%87%8F%E5%85%B3%E9%97%AD%20Linux%20%E8%AE%A1%E7%AE%97%E6%9C%BA.png)
当电池电量低于一定水平时,是否有办法关闭基于 Linux 的计算机?我搜索了关机和断电手册,但没有找到相关内容。
答案1
好吧!我对这个主题做了一些更深入的研究,似乎可以用脚本来完成。下面我的脚本的灵感来源于 arch linux 论坛中的以下主题:
https://bbs.archlinux.org/viewtopic.php?id=162900,更具体地说是第一个空缺的职位。
#!/bin/bash
BATTINFO=`acpi -b`
CRITICAL_PERCENTAGE=21
FILE_LOCATION="/home/username/LOW_BATTERY" #change this to correct username!
if [[ `echo $BATTINFO | grep Discharging` && `echo $BATTINFO | cut -c 25-26 ` -lt $CRITICAL_PERCENTAGE ]]
then
echo `date` >> $FILE_LOCATION
echo "Was forced to hibernate, due to low battery status">>$FILE_LOCATION
echo $BATTINFO >> $FILE_LOCATION
sudo pm-hibernate
fi
可以使用 cron 作业自动执行该作业,方法是编辑 root 用户的 crontab 文件(例如,在终端中使用 su,然后使用 crontab -e),以便每隔一定间隔(例如 2 分钟)执行一次脚本。正如 davidgo 在上面提到的,有一个(非常)类似的问题,回答于http://unix.stackexchange.com,可以作为更高级方法的参考。