Fedora 14の下でthinkpadノートブックバッテリを保護


Linuxのメリットは言うまでもなく、欠点もたくさんあって、本当に私などの怠け者はあまり使いにくいです.例えば私の仕事のノートT 61、3年続けて使って、RHEL 5のためです.xオペレーティングシステムはバッテリーを集積して保護モジュールを充填していないし、バッテリーがいっぱいになったときも交流電力を充填していて、2つのバッテリーを壊してしまった.資本家がお金を出しても痛くないが、結局は気分が悪い.友达はubuntuの下にtpがあることをお勧めします.smapiモジュールとか、windowsのように電池を保護することができて、googleは、fedoraのこの方面が意外にも時代遅れであることを発見して、upstreamを集積していないで、残念ながら残念ながら、面倒な点DIYしかありません.
forumによるとthinkpads.com上达人的指导,要先使用akmods,装好akmod-tp_smapiの後、modprobeにsmapiバッテリ管理モジュールを搭載し、最後に充電開始と終了のしきい値を設定します.詳細は以下の通りです.
にあるhttp://izhar.fedorapeople.org/tp_smapi-kmod/ダウンロードはFedoraでコンパイルしたakmodモジュールで、バージョンは低くても大丈夫です.
rpm-ivh akmod-tp_の使用smapi-0.40-1.fc11.i686.rpmインストール、注意、このrpmはkernel develのサポートが必要です
サービスakmods restartを呼び出し、その後rpm-qa|grep smapiをクリックすると、kernelに関するF 14のrpmが生成インストールされていることがわかります
このときmodprobe-l|grep smapiを使用してモジュールがreadyであるかどうかを確認し、modprobe tp_smapiマウントモジュールを試してみます.
したがって、以下のコマンドを使用して充電しきい値を設定することができ、BATはノートパソコンのデフォルトのバッテリーを表す(BAT 1はBIOSバッテリーのようで、気にしない)
# echo 20 > /sys/devices/platform/smapi/BAT0/start_charge_thresh
# echo 80 > /sys/devices/platform/smapi/BAT0/stop_charge_thresh

ここでは、基本的に4と5は、この機能を有効にする必要があるたびにしなければならないので、サービスをしてデフォルトで起動するほうが便利です(/etc/init.d/tp_smapi):
#!/bin/sh
#
# chkconfig: 12345 21 80
. /etc/init.d/functions
SMAPILOCK=/var/lock/tp_smapi_lock
start()
{
echo -n $"Starting tp_smapi service: "
/sbin/modprobe -q tp_smapi
echo 20 > /sys/devices/platform/smapi/BAT0/start_charge_thresh
echo 80 > /sys/devices/platform/smapi/BAT0/stop_charge_thresh
echo
touch $SMAPILOCK
echo
}
stop()
{
/sbin/modprobe -r tp_smapi
rm -f $SMAPILOCK
}
status()
{
status=0
if [ -f $SMAPILOCK ]; then
echo "RUNNING"
else
echo "UNUSED"
status=1
fi
return $status
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
status
exit $?
;;
*)
echo "Usage: $0 {start|stop|status|restart}"
exit 1
;;
esac

F 14がカーネルをアップグレードするたびに、関連するakmodをやり直し、スクリプトをサボって解決しましょう.
#!/bin/sh

echo 'looking for old rpms ...'

for rpm in `sudo rpm -qa| grep smapi`
do
        echo undeploying $rpm ...
        sudo rpm -e $rpm
done

echo 'installing akmod ...'
sudo rpm -ivh akmod-tp_smapi-0.40-1.fc11.i686.rpm
sudo /usr/sbin/akmods --force
sudo service akmods restart

echo 'mod status:'
sudo modprobe -l | grep smapi

echo 'set battery thresholds ...'
sudo service tp_smapi restart

echo 'done.'