#!/bin/sh # # blockdev This shell script takes care of starting and stopping blockdev. # # chkconfig: 2345 01 99 # description: blockdev # # processname: blockdev # config: # pidfile: # Source function library. . /etc/rc.d/init.d/functions # Source blockdev configureation. [ -f /etc/sysconfig/blockdev ] && . /etc/sysconfig/blockdev start() { if [ ! -f /var/lock/subsys/blockdev ]; then for drive in $(ls /sys/block 2> /dev/null); do if [ -d "/sys/block/${drive}" -a -e "/dev/${drive}" ]; then eval PARAMS=\$BLOCKDEV_${drive} if [ -n "${PARAMS}" ]; then show "Setting parameters for block drive %s (%s)" "$drive" "$PARAMS" busy /sbin/blockdev ${PARAMS} /dev/${drive} ok fi fi done RETVAL=$? [ $RETVAL -eq 0 ] && touch /var/lock/subsys/blockdev else msg_already_running blockdev fi } stop() { # Stop daemons. if [ ! -f /var/lock/subsys/blockdev ]; then msg_not_running blockdev fi rm -f /var/lock/subsys/blockdev } RETVAL=0 # See how we were called. case "$1" in start) start ;; stop) stop ;; restart|force-reload) stop start ;; status) status blockdev exit $? ;; *) msg_usage "$0 {start|stop|restart|force-reload|status}" exit 3 esac exit $RETVAL