]> git.pld-linux.org Git - packages/util-linux.git/blob - util-linux-blockdev.init
- up
[packages/util-linux.git] / util-linux-blockdev.init
1 #!/bin/sh
2 #
3 # blockdev              This shell script takes care of starting and stopping blockdev.
4 #
5 # chkconfig:    2345 01 99
6 # description:  blockdev
7 #
8 # processname:  blockdev
9 # config:
10 # pidfile:
11
12 # Source function library.
13 . /etc/rc.d/init.d/functions
14
15 # Source blockdev configureation.
16 [ -f /etc/sysconfig/blockdev ] && . /etc/sysconfig/blockdev
17
18 start() {
19         if [ ! -f /var/lock/subsys/blockdev ]; then
20                 for drive in $(ls /sys/block 2> /dev/null; ls /dev/mapper 2> /dev/null); do
21                         if [ [ -d "/sys/block/${drive}" -a -e "/dev/${drive}" ]; then
22                                 realdrive="/dev/${drive}"
23                         elif [ -e "/dev/mapper/${drive}" ]; then
24                                 realdrive="/dev/mapper/${drive}"
25                         fi
26                         if [ -n "$realdrive" ]; then
27                                 eval PARAMS=\$BLOCKDEV_$(echo $drive | tr - _)
28                                 if [ -n "${PARAMS}" ]; then
29                                         show "Setting parameters for block drive %s (%s)" "$drive" "$PARAMS"
30                                         busy
31                                         /sbin/blockdev ${PARAMS} ${realdrive}
32                                         ok
33                                 fi
34                         fi
35                 done
36                 RETVAL=$?
37                 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/blockdev
38         else
39                 msg_already_running blockdev
40         fi
41 }
42
43 stop() {
44         # Stop daemons.
45         if [ ! -f /var/lock/subsys/blockdev ]; then
46                 msg_not_running blockdev
47         fi
48         rm -f /var/lock/subsys/blockdev
49 }
50
51 RETVAL=0
52 # See how we were called.
53 case "$1" in
54   start)
55         start
56         ;;
57   stop)
58         stop
59         ;;
60   restart|force-reload)
61         stop
62         start
63         ;;
64   status)
65         status blockdev
66         exit $?
67         ;;
68   *)
69         msg_usage "$0 {start|stop|restart|force-reload|status}"
70         exit 3
71 esac
72
73 exit $RETVAL
This page took 0.073015 seconds and 3 git commands to generate.