udev-rules in /lib/udev/rules.d/ sind vorgegeben und eigene rules in /etc/udev/rules.d/
alle rules müssen mit .rules enden.
root> udevadm monitor –property
Batterie Ladezustand anzeigen und bei zu niedriger Ladung warnen bzw. in Suspend-to-RAM gehen.
Benötigte Packete:
apt-get install xosd-bin beep pm-utils
In /etc/udev/rules.d/
99-power-status.rules SUBSYSTEM=="power_supply", ATTR{status}=="Discharging", RUN+="/usr/bin/su - -c /usr/local/bin/battery_status" SUBSYSTEM=="power_supply", ENV{POWER_SUPPLY_NAME}=="AC", RUN+="/usr/bin/su - -c /usr/local/bin/ac_power_status"
/usr/local/bin/battery_status #!/usr/bin/bash cap=`cat /sys/class/power_supply/BAT0/capacity` stat=`cat /sys/class/power_supply/BAT0/status` level=`cat /sys/class/power_supply/BAT0/capacity_level` if [ "$level" = "Full" ]; then echo -e "Batterie-Status:\n$stat\n$level $cap %"|osd_cat --colour=green -f '-adobe-courier-bold-r-*-*-180-*-*-*-*-*-*-*' -O 10 -p bottom -A center -o 600 -d 5 & fi if [ "$level" = "Normal" ]; then echo -e "Batterie-Status:\n$stat\n$level $cap %"|osd_cat --colour=green -f '-adobe-courier-bold-r-*-*-180-*-*-*-*-*-*-*' -O 10 -p bottom -A center -o 600 -d 5 & beep -f 50 fi if [ "$level" = "Low" ]; then echo -e "Batterie-Status:\n$stat\n$level $cap %"|osd_cat --colour=yellow -f '-adobe-courier-bold-r-*-*-180-*-*-*-*-*-*-*' -O 10 -p bottom -A center -o 600 -d 7 & beep -f 2000 -l 1000 -n -f 1000 -l 1000 -n -f 2000 -l 1000 -n -f 1000 -l 1000 fi if [ "$level" = "Critical" ]; then echo -e "Batterie-Status:\n$stat\n$level $cap %"|osd_cat --colour=red -f '-adobe-courier-bold-r-*-*-180-*-*-*-*-*-*-*' -O 10 -p bottom -A center -o 600 -d 10 & beep -f 2000 -l 1000 -n -f 1000 -l 1000 -n -f 2000 -l 1000 -n -f 1000 -l 1000 -n -f 2000 -l 1000 -n -f 1000 -l 1000 -n -f 2000 -l 1000 -n -f 1000 -l 1000 -n -f 2000 -l 1000 -n -f 1000 -l 1000 sleep 5 echo -e "Shutdown\nSuspend to RAM"|osd_cat --colour=red -f '-adobe-courier-bold-r-*-*-180-*-*-*-*-*-*-*' -O 10 -p bottom -A center -o 600 -d 10 sleep 5 /usr/sbin/pm-suspend fi
/usr/local/bin/ac_power_status #!/usr/bin/bash stat=`cat /sys/class/power_supply/AC/online` if [ "$stat" = "0" ]; then echo -e "AC-Power-Status:\nOFFLINE"|osd_cat --colour=red -f '-adobe-courier-bold-r-*-*-180-*-*-*-*-*-*-*' -p bottom -A center -d 10 & beep -f 2000 -l 1000 -n -f 1000 -l 1000 -n -f 2000 -l 1000 -n -f 1000 -l 1000 fi if [ "$stat" = "1" ]; then echo -e "AC-Power-Status:\nONLINE"|osd_cat --colour=green -f '-adobe-courier-bold-r-*-*-180-*-*-*-*-*-*-*' -p bottom -A center -d 5 & beep -f 50 -l 1000 fi