#!/bin/bash # # /etc/rc.d/init.d/acpid # # Starts the acpi daemon # # chkconfig: 345 44 01 # description: Listen and dispatch ACPI events from the kernel # processname: acpid # Source function library. . /etc/rc.d/init.d/functions if [ -f /etc/sysconfig/acpi ]; then source /etc/sysconfig/acpi fi DAEMON=acpi PROGNAME=${DAEMON}d test -x /usr/sbin/$PROGNAME || exit 0 RETVAL=0 # # See how we were called. # start() { # Check if it is already running if [[ ! -f /var/lock/subsys/$PROGNAME && -e /proc/acpi ]]; then echo -n "Loading ACPI modules: " if [ "$AC" != "no" ];then action "Loading ACPI AC control module" /sbin/modprobe ac 2>/dev/null fi if [ "$BATTERY" != "no" ];then action "Loading ACPI BATTERY control module" /sbin/modprobe battery 2>/dev/null fi if [ "$FAN" != "no" ];then action "Loading ACPI FAN control module" /sbin/modprobe fan 2>/dev/null fi if [ "$HOTKEY" != "no" ];then action "Loading ACPI HOTKEY control module" /sbin/modprobe hotkey 2>/dev/null \ || echo "HOTKEY=no" >> /etc/sysconfig/acpi fi if [ "$THERMAL" != "no" ];then action "Loading ACPI THERMAL control module" /sbin/modprobe thermal 2>/dev/null fi if [ "$BUTTON" != "no" ];then action "Loading ACPI BUTTON control module" /sbin/modprobe button 2>/dev/null fi if [ "$PROCESSOR" != "no" ];then action "Loading ACPI PROCESSOR control module" /sbin/modprobe processor 2>/dev/null fi if [ "$ASUS_ACPI" != "no" ];then action "Loading ACPI ASUS control module" /sbin/modprobe asus_acpi 2>/dev/null \ || echo "ASUS_ACPI=no" >> /etc/sysconfig/acpi fi if [ "$IBM_ACPI" != "no" ];then action "Loading ACPI IBM control module" /sbin/modprobe ibm_acpi 2>/dev/null \ || echo "IBM_ACPI=no" >> /etc/sysconfig/acpi fi if [ "$TOSHIBA_ACPI" != "no" ];then action "Loading ACPI TOSHIBA control module" /sbin/modprobe toshiba_acpi 2>/dev/null\ || echo "TOSHIBA_ACPI=no" >> /etc/sysconfig/acpi fi if [ "$CONTAINER" != "no" ];then action "Loading ACPI CONTAINER control module" /sbin/modprobe container 2>/dev/null fi if [ "$VIDEO" != "no" ];then action "Loading ACPI VIDEO control module" /sbin/modprobe video 2>/dev/null fi if [ "$CPU_FREQ" -a "$CPU_FREQ" != "no" ];then action "Loading CPUFREQ control module" /sbin/modprobe $CPU_FREQ 2>/dev/null fi if [ -e /proc/acpi/event ]; then echo -n "Starting $DAEMON daemon: " daemon /usr/sbin/$PROGNAME RETVAL=$? [ $RETVAL -eq 0 ] && touch /var/lock/subsys/$PROGNAME echo fi fi return $RETVAL } stop() { if [[ -f /var/lock/subsys/$PROGNAME && -e /proc/acpi/event ]]; then echo -n "Stopping $DAEMON daemon: " killproc /usr/sbin/$PROGNAME RETVAL=$? [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$PROGNAME echo return $RETVAL fi } restart() { stop start } reload() { trap "" SIGHUP killall -HUP $PROGNAME } case "$1" in start) start ;; stop) stop ;; reload) reload ;; restart) restart ;; condrestart) if [ -f /var/lock/subsys/$PROGNAME ]; then restart fi ;; status) status $PROGNAME ;; *) INITNAME=`basename $0` echo "Usage: $INITNAME {start|stop|restart|condrestart|status}" exit 1 esac exit $RETVAL