ACPI action script for battery events
This is an example ACPI action script that makes Power Management adjustments according to if you are on battery or on AC. Usually this is saved as /etc/acpid/actions/battery.sh.
#!/bin/sh # I' using this on FC2 and FC3 # cpu throttling off as FC does thisout-of-the-box # turning swap off is only for those that feel comfortable # doing something this nasty. # # pcfe, 2004-11-15 # cpu throttling # cat /proc/acpi/processor/CPU0/throttling for more info ACAD_THR=0 BATT_THR=2 # spindown time for HD (man hdparm for valid values) # I prefer 2 hours for acad and 2 min for batt ACAD_HD=244 BATT_HD=24 # Power management level # 255 (off) on AC # 128 (medium) on batt # lowered to 32, pcfe, 2004-06-23 # upped to 64, pcfe, 2004-07-14 # upped to 96, pcfe, 2004-10-20 ACAD_PM=255 BATT_PM=96 # ac/battery event handler status=`awk '/^state: / { print $2 }' /proc/acpi/ac_adapter/AC/state` case $status in "on-line") logger "Running /sbin/laptop_mode stop" /sbin/laptop_mode stop logger "Setting HD spindown for AC mode with hdparm -S $ACAD_HD /dev/hda." /sbin/hdparm -S $ACAD_HD /dev/hda > /dev/null 2>&1 logger "Setting HD powersaving for AC mode with hdparm -B $ACAD_PM /dev/hda." /sbin/hdparm -B $ACAD_PM /dev/hda > /dev/null 2>&1 #logger "Turning on swap." #/sbin/swapon -a #echo -n $ACAD_CPU:$ACAD_THR > /proc/acpi/processor/CPU0/limit exit 0 ;; "off-line") #logger "Turning off swap." #/sbin/swapoff -a logger "Running /sbin/laptop_mode start" /sbin/laptop_mode start logger "Setting HD spindown for battery mode with hdparm -S $BATT_HD /dev/hda." /sbin/hdparm -S $BATT_HD /dev/hda > /dev/null 2>&1 logger "Setting HD powersaving for battery mode with hdparm -B $BATT_PM /dev/hda." /sbin/hdparm -B $BATT_PM /dev/hda > /dev/null 2>&1 #echo -n $BATT_CPU:$BATT_THR > /proc/acpi/processor/CPU0/limit exit 0 ;; esac