#!/bin/sh # # sensors_modules: Hardware sensors monitoring # # Version: $Revision$ # # chkconfig: 2345 31 69 # description: Loads and removes hardware sensors modules # Source function library. . /etc/rc.d/init.d/functions # Get service config if [ -f /etc/sysconfig/sensors_modules ]; then . /etc/sysconfig/sensors_modules fi start() { # Check if the service is already running? if [ ! -f /var/lock/subsys/sensors_modules ]; then if [ -z "$BUS" ] && [ -z "$CHIP" ]; then msg_starting "sensors modules"; fail nls "BUS or CHIP not configured in /etc/sysconfig/sensors_modules" >&2 exit 6 fi # insert modules for i in $BUS; do _modprobe single die "i2c-$i" done for i in $CHIP; do _modprobe single die "$i" done if [ "$SENSORS_SET" = "1" ]; then sensors -s fi touch /var/lock/subsys/sensors_modules else msg_already_running "sensors modules" fi } stop() { if [ -f /var/lock/subsys/sensors_modules ]; then msg_stopping "sensors modules" # remove kernel modules for i in $CHIP; do /sbin/rmmod $i >/dev/null 2>&1 done for i in $BUS; do /sbin/rmmod i2c-$BUS >/dev/null 2>&1 done ok rm -f /var/lock/subsys/sensors_modules else msg_not_running "sensors modules" fi } RETVAL=0 # See how we were called. case "$1" in start) start ;; stop) stop ;; status) sensors ;; restart|force-reload) stop start ;; *) msg_usage "$0 {start|stop|restart|force-reload|status}" exit 3 esac exit $RETVAL