~ubuntu-branches/ubuntu/hardy/open-iscsi/hardy-updates

« back to all changes in this revision

Viewing changes to etc/initd/initd.redhat

  • Committer: Bazaar Package Importer
  • Author(s): Martin Zobel-Helas
  • Date: 2006-12-03 16:54:21 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20061203165421-xhttz5j4l9sowg8u
Tags: 2.0.730-0.2
upload to unstable, as no new bugs arised.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
#!/bin/sh
2
2
#
3
 
# chkconfig: - 39 35
 
3
# chkconfig: 345 13 89
4
4
# description: Starts and stops the iSCSI initiator
5
5
#
 
6
# processname: iscsid
6
7
# pidfile: /var/run/iscsid.pid
7
 
# config:  /etc/iscsid.conf
 
8
# config:  /etc/iscsi/iscsid.conf
8
9
 
9
10
# Source function library.
10
 
if [ -f /etc/init.d/functions ] ; then
11
 
  . /etc/init.d/functions
12
 
elif [ -f /etc/rc.d/init.d/functions ] ; then
13
 
  . /etc/rc.d/init.d/functions
14
 
else
15
 
  exit 0
16
 
fi
17
 
 
18
 
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin
19
 
 
20
 
ISCSID=`which iscsid`
21
 
ISCSIADM=`which iscsiadm`
22
 
 
23
 
if [ -z $ISCSID ] || [ -z $ISCSIADM ]
24
 
then
25
 
    echo "open-iscsi not installed."
26
 
    exit 1
27
 
fi
28
 
 
29
 
start_iscsid()
30
 
{
31
 
    RETVAL=0
32
 
    modprobe -q iscsi_tcp
33
 
    daemon $ISCSID
34
 
    RETVAL=$?
35
 
    TARGETS=`$ISCSIADM -m node | sed 's@\[\(.*\)\] .*@\1@g'`
36
 
    for rec in $TARGETS
37
 
    do
38
 
        STARTUP=`$ISCSIADM -m node -r $rec | grep "node.conn\[0\].startup" | cut -d' ' -f3`
39
 
        if [ $STARTUP = "automatic" ]
40
 
        then
41
 
                $ISCSIADM -m node -r $rec -l
42
 
        fi
43
 
    done
44
 
    return $RETVAL
45
 
}
46
 
 
47
 
stop_iscsid()
48
 
{
49
 
    RETVAL=0
50
 
    sync
51
 
    TARGETS=`$ISCSIADM | grep "\[*\]" | sed 's@\[\(.*\)\] .*@\1@g'`
52
 
    for rec in $TARGETS
53
 
    do
54
 
        $ISCSIADM -m node -r $rec -u
55
 
    done
56
 
    pkill -KILL `basename $ISCSID`
57
 
    modprobe -r iscsi_tcp
58
 
    RETVAL=$?
59
 
    return $RETVAL
60
 
}
 
11
. /etc/init.d/functions
 
12
 
 
13
PATH=/sbin:/bin:/usr/sbin:/usr/bin
 
14
 
 
15
RETVAL=0
61
16
 
62
17
start()
63
18
{
64
 
    RETVAL=0
65
 
    echo -n "Starting iSCSI initiator service: "
66
 
    PID=`pidofproc $ISCSID`
67
 
    if [ -z $PID ]
68
 
    then
69
 
        start_iscsid
70
 
    fi
71
 
    if [ $RETVAL == "0" ]
72
 
    then
73
 
        echo_success
74
 
    else
75
 
        echo_failure
76
 
    fi
77
 
    echo
78
 
    return $RETVAL
 
19
        echo -n $"Starting iSCSI initiator service: "
 
20
        modprobe -q iscsi_tcp
 
21
        modprobe -q ib_iser
 
22
        daemon iscsid
 
23
        RETVAL=$?
 
24
        success
 
25
        echo
 
26
        [ $RETVAL -eq 0 ] || return
 
27
 
 
28
        touch /var/lock/subsys/open-iscsi
 
29
 
 
30
        echo -n $"Setting up iSCSI targets: "
 
31
        iscsiadm -m node --loginall=automatic
 
32
        success
 
33
        echo
 
34
 
79
35
}
80
36
 
81
37
stop()
82
38
{
83
 
    RETVAL=0
84
 
    echo -n "Stopping iSCSI initiator service: "
85
 
    PID=`pidofproc $ISCSID`
86
 
    if [ $PID ]
87
 
    then
88
 
        stop_iscsid
89
 
    fi
90
 
    if [ $RETVAL == "0" ]
91
 
    then
92
 
        echo_success
93
 
    else
94
 
        echo_failure
95
 
    fi
96
 
    echo
97
 
    return $RETVAL
 
39
        echo -n $"Stopping iSCSI initiator service: "
 
40
        sync
 
41
        iscsiadm -m node --logoutall=all
 
42
        pkill -KILL iscsid
 
43
        rm -f /var/run/iscsid.pid
 
44
        #killproc iscsid
 
45
        [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/open-iscsi
 
46
        modprobe -r iscsi_tcp 2>/dev/null
 
47
        modprobe -r ib_iser 2>/dev/null
 
48
        success
 
49
        echo
 
50
 
98
51
}
99
52
 
100
 
 
101
53
restart()
102
54
{
103
 
    stop
104
 
    start
105
 
}
 
55
        stop
 
56
        start
106
57
 
107
 
status()
108
 
{
109
 
    PID=`pidofproc $ISCSID`
110
 
    if [ ! $PID ]
111
 
    then
112
 
        echo "iSCSI initiator is stopped."
113
 
        exit 1
114
 
    else
115
 
        echo "iSCSI initiator is running."
116
 
    fi
117
58
}
118
59
 
119
60
case "$1" in
120
 
  start)
121
 
        start
122
 
        ;;
123
 
  stop)
124
 
        stop
125
 
        ;;
126
 
  restart)
127
 
        restart
128
 
        ;;
129
 
  status)
130
 
        status
131
 
        ;;
132
 
  *)
133
 
        echo $"Usage: $0 {start|stop|restart|status}"
134
 
        exit 1
 
61
        start)
 
62
                        start
 
63
                        ;;
 
64
        stop)
 
65
                        stop
 
66
                        ;;
 
67
        restart)
 
68
                        stop
 
69
                        start
 
70
                        ;;
 
71
        status)
 
72
                        status iscsid
 
73
                        RETVAL=$?
 
74
                        ;;
 
75
        condrestart)
 
76
                        [ -f /var/lock/subsys/iscsi ] && restart
 
77
                        ;;
 
78
        *)
 
79
                        echo $"Usage: $0 {start|stop|restart|status|condrestart}"
 
80
                        exit 1
135
81
esac
136
82
 
137
 
exit 0
 
83
exit $RETVAL