diff options
author | mnc <mnc@d7303112-9cec-0310-bdd2-e83a94d6c2b6> | 2006-08-24 18:28:56 +0000 |
---|---|---|
committer | mnc <mnc@d7303112-9cec-0310-bdd2-e83a94d6c2b6> | 2006-08-24 18:28:56 +0000 |
commit | 760e45ddb1f27c43e96514c84461d2c0b968dfce (patch) | |
tree | 0fed09bb24a9225bcc674dc6004bf5a21257700c /etc/initd/initd.redhat | |
parent | 8d7ecaf5f34050487c9515f64ec58e7c7a9b944a (diff) | |
download | open-iscsi-760e45ddb1f27c43e96514c84461d2c0b968dfce.tar.gz |
from Kenji Wakamiya and Albert Pauw: update redhat init scipt for new iscsiadm format
git-svn-id: svn://svn.berlios.de/open-iscsi@669 d7303112-9cec-0310-bdd2-e83a94d6c2b6
Diffstat (limited to 'etc/initd/initd.redhat')
-rw-r--r-- | etc/initd/initd.redhat | 76 |
1 files changed, 42 insertions, 34 deletions
diff --git a/etc/initd/initd.redhat b/etc/initd/initd.redhat index 7f36649..bf6211e 100644 --- a/etc/initd/initd.redhat +++ b/etc/initd/initd.redhat @@ -4,8 +4,8 @@ # description: Starts and stops the iSCSI initiator # # processname: iscsid -# pidfile: /var/run/iscsid.pid -# config: /etc/iscsid.conf +# pidfile: /etc/iscsi/iscsid.pid +# config: /etc/iscsi/iscsid.conf # Source function library. . /etc/init.d/functions @@ -20,18 +20,21 @@ start() modprobe -q iscsi_tcp daemon iscsid RETVAL=$? + success echo [ $RETVAL -eq 0 ] || return touch /var/lock/subsys/iscsi echo -n $"Setting up iSCSI targets: " - TARGETS=`iscsiadm -m node 2> /dev/null | sed 's@\[\(.*\)\] .*@\1@g'` - for rec in $TARGETS; do - STARTUP=`iscsiadm -m node -r $rec | grep "node.conn\[0\].startup" | cut -d' ' -f3` - if [ $STARTUP = "automatic" ]; then - iscsiadm -m node -r $rec -l - fi + TARGETS=`iscsiadm -m node 2>/dev/null | sed 's/ /@/g'` + for node in $TARGETS; do + target=`echo $node | cut -d@ -f2` + port=`echo $node | cut -d@ -f1` + STARTUP=`iscsiadm -m node -T $target -p $port | grep "node.conn\[0\].startup" | cut -d' ' -f3` + if [ "$STARTUP" = "automatic" ]; then + iscsiadm -m node -T $target -p $port -l + fi done success echo @@ -42,50 +45,55 @@ stop() { echo -n $"Stopping iSCSI initiator service: " sync - TARGETS=`iscsiadm -m session | grep "\[*\]" | sed 's@\[\(.*\)\] .*@\1@g'` - for rec in $TARGETS; do - STARTUP=`iscsiadm -m node -r $rec | grep "node.conn\[0\]/.startup" | cut -d' ' -f3` - if [ $STARTUP != "onboot" ] ; then - iscsiadm -m node -r $rec -u - fi - done - + TARGETS=`iscsiadm -m session 2>/dev/null| sed 's/ /@/g'` + if [ "$TARGETS" != "no@active@sessions" ] ; then + for sess in $TARGETS; do + target=`echo $sess | cut -d@ -f3` + port=`echo $sess | cut -d@ -f2` + STARTUP=`iscsiadm -m node -T $target -p $port | grep "node.conn\[0\].startup" | cut -d' ' -f3` + if [ "$STARTUP" != "onboot" ] ; then + iscsiadm -m node -T $target -p $port -u + fi + done + fi pkill -KILL iscsid - rm -f /var/run/iscsid.pid + rm -f /etc/iscsi/iscsid.pid #killproc iscsid - echo [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/iscsi - modprobe -r iscsi_tcp 2>/dev/null + success + echo + } restart() { stop start + } case "$1" in start) - start - ;; + start + ;; stop) - stop - ;; + stop + ;; restart) - stop - start - ;; + stop + start + ;; status) - status iscsid - RETVAL=$? - ;; - condrestart) - [ -f /var/lock/subsys/iscsi ] && restart - ;; + status iscsid + RETVAL=$? + ;; + condrestart) + [ -f /var/lock/subsys/iscsi ] && restart + ;; *) - echo $"Usage: $0 {start|stop|restart|status|condrestart}" - exit 1 + echo $"Usage: $0 {start|stop|restart|status|condrestart}" + exit 1 esac exit $RETVAL |