问题描述
我刚才了解到,一些联想笔记本电脑包含一个实用程序,可将电池充电容量限制在0-80%之内,以减缓电池寿命的衰减:
我如何在Ubuntu中做到这一点?
最佳解决方案
非常不幸的是,充电阈值是固件和供应商特定的。
Lenovo ThinkPad用户幸运地获得了ThinkWiki上概述的解决方案。
它基本上说,你将不得不安装和加载tp_smapi
内核模块:
sudo apt-get install tp-smapi-dkms
sudo modprobe tp_smapi
并将所需的计费阈值写入/sys/devices/platform/smapi
中的虚拟文件:
echo 40 | sudo tee /sys/devices/platform/smapi/BAT0/start_charge_thresh
echo 80 | sudo tee /sys/devices/platform/smapi/BAT0/stop_charge_thresh
然后一旦它达到80%就停止充电,并且当它降到40%以下时才开始充电。
东芝和其他公司可能有类似的内核模块,将固件功能暴露给/sys
或/proc
空间,但它不太可能出现专利问题。出于同样的原因,一个可以处理这个问题的应用程序可以是Thinkpad专用的,也可以只针对几个选定的供应商。
次佳解决方案
接受的答案不适用于我的新Lenovo T440s。显然,固件发生了变化。遵循http://www.thinkwiki.org/wiki/Tpacpi-bat,我做到了
git clone https://github.com/teleshoes/tpacpi-bat.git
cd tpacpi-bat/
./install.pl
sudo ./tpacpi-bat -s ST 1 15 # load internal battery when below 15%
sudo ./tpacpi-bat -s SP 1 95 # stop charging at 95%
sudo ./tpacpi-bat -g ST 2 # when is external battery loaded?
作为参考,我在debian测试中做了这个,但我相信它也可以在ubuntu中使用。
第三种解决方案
Ubuntu(以及其他发行版)现在有一个更好的应用程序可用:
TLP – Linux Advanced Power Management
TLP brings you the benefits of advanced power management for Linux without the need to understand every technical detail. TLP comes with a default configuration already optimized for battery life, so you may just install and forget it. Nevertheless TLP is highly customizable to fulfil your specific requirements.
它控制的参数之一是维持电池充电限制。它仍然只适用于Thinkpad,但考虑到该项目的性质 – 如果适用于其他设备的驱动程序将可用,则它们很可能也将被集成到该项目中。因此,如果您在几年内阅读此评论,请查看文档,也许您的设备实际上受支持。
Ubuntu包可用in the official repository。
第四种方案
在运行Windows 8.1的东芝R830上,我安装了东芝省电应用程序,以便将电池电量限制在80%
当我在Linux(Ubuntu,Mint等)上启动时,最高收费仍然限制在80%。
因此,东芝节电似乎将其配置存储到BIOS中。
唯一的缺点是,如果我想用充满电的电池旅行,我必须在Windows上重新启动并更改节电配置。
第五种方案
您是否检查过笔记本电脑上是否有BIOS设置?我的笔记本电脑上有一个Windows应用程序以及BIOS中的“电池寿命扩展器”设置,用于此确切功能。