Add original scripts
This commit is contained in:
131
iscsiinit.sh
Executable file
131
iscsiinit.sh
Executable file
@@ -0,0 +1,131 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# chkconfig: 345 13 89
|
||||
# description: Starts and stops the iSCSI initiator
|
||||
#
|
||||
# processname: /sbin/iscsid
|
||||
# pidfile: /var/run/sbin/iscsid.pid
|
||||
# config: /etc/config/iscsi/sbin/iscsid.conf
|
||||
|
||||
# Source function library.
|
||||
|
||||
PATH=/sbin:/bin:/usr/sbin:/usr/bin
|
||||
INITNAME_FILE=/etc/iscsi/initiatorname.iscsi
|
||||
CONF_FILE=/etc/config/iscsi/sbin/iscsid.conf
|
||||
MAPPING_FILE=/etc/config/virtual_share_mapping
|
||||
|
||||
RETVAL=0
|
||||
|
||||
mkinitname()
|
||||
{
|
||||
[ -d /etc/iscsi ] || /bin/mkdir -p /etc/iscsi
|
||||
MODEL=`/sbin/getcfg System Model`
|
||||
SERVER_NAME=`/sbin/getcfg System "Server Name"`
|
||||
project_name=`/sbin/getcfg Project Name -f /var/default`
|
||||
if [ "x$project_name" = "xAthens" ]; then
|
||||
/bin/echo "InitiatorName=iqn.1987-05.com.cisco:${MODEL}.${SERVER_NAME}" > $INITNAME_FILE
|
||||
else
|
||||
if [ -f /etc/IS_G ]; then
|
||||
/bin/echo "InitiatorName=iqn.2004-04.com.NAS:Initiator.${SERVER_NAME}" > $INITNAME_FILE
|
||||
else
|
||||
/bin/echo "InitiatorName=iqn.2004-04.com.qnap:${MODEL}.${SERVER_NAME}" > $INITNAME_FILE
|
||||
fi
|
||||
fi
|
||||
}
|
||||
start()
|
||||
{
|
||||
INSTALL_FLAG_FILE=/tmp/check_install.flag
|
||||
# echo Test $INSTALL_FLAG_FILE >> /tmp/inst.log
|
||||
if [ -f $INSTALL_FLAG_FILE ] ; then
|
||||
# /bin/cat $INSTALL_FLAG_FILE >> /tmp/inst.log
|
||||
INSTALLING=`/bin/cat $INSTALL_FLAG_FILE`
|
||||
[ $INSTALLING = "1" ] && exit 0
|
||||
fi
|
||||
|
||||
Q_CONF_FILE=/etc/config/iscsi-init.conf
|
||||
/bin/echo $"Starting iSCSI initiator service: "
|
||||
[ -f $Q_CONF_FILE ] || /bin/echo "#QNAP iSCSI initiator configure file" > $Q_CONF_FILE
|
||||
[ -f $MAPPING_FILE ] || echo "[VirtualDisk1]" > $MAPPING_FILE
|
||||
/sbin/insmod /lib/modules/misc/scsi_transport_iscsi.ko
|
||||
/sbin/insmod /lib/modules/misc/libiscsi.ko
|
||||
[ -f /lib/modules/misc/libiscsi_tcp.ko ] && /sbin/insmod /lib/modules/misc/libiscsi_tcp.ko
|
||||
/sbin/insmod /lib/modules/misc/iscsi_tcp.ko
|
||||
mkinitname
|
||||
/sbin/iscsid --config=${CONF_FILE} --initiatorname=${INITNAME_FILE}
|
||||
RETVAL=$?
|
||||
[ $RETVAL -eq 0 ] || return
|
||||
|
||||
/bin/touch /var/lock/subsys/open-iscsi
|
||||
#VDD enhancement version uses vdd_control daemon to replace vdd_control+vdd_scan_target
|
||||
[ -f /sbin/vdd_scan_target ] || /sbin/daemon_mgr vdd_control start "/sbin/vdd_control -d >/dev/null 2>&1 &"
|
||||
|
||||
[ -f /etc/config/virtual_share_mapping ] || echo "" >> /etc/config/virtual_share_mapping
|
||||
if [ -f /sbin/storage_boot_init ]; then
|
||||
/sbin/storage_boot_init 8
|
||||
fi
|
||||
|
||||
|
||||
|
||||
# /bin/echo -n $"Setting up iSCSI targets: "
|
||||
# /sbin/iscsiadm -m node --loginall=automatic
|
||||
# success
|
||||
# /bin/echo
|
||||
}
|
||||
|
||||
stop()
|
||||
{
|
||||
[ -f /sbin/umount_all_vdd ] && /sbin/umount_all_vdd
|
||||
/bin/echo -n $"Stopping iSCSI initiator service: "
|
||||
/bin/sync
|
||||
/sbin/iscsiadm -m node --logoutall=all
|
||||
/usr/bin/killall iscsid
|
||||
/bin/rm -f /var/run/sbin/iscsid.pid
|
||||
[ $RETVAL -eq 0 ] && /bin/rm -f /var/lock/subsys/open-iscsi
|
||||
status=0
|
||||
/sbin/rmmod /lib/modules/misc/iscsi_tcp.ko
|
||||
if [ "$?" -ne "0" -a "$?" -ne "1" ]; then
|
||||
status=1
|
||||
fi
|
||||
/sbin/rmmod /lib/modules/misc/libiscsi_tcp.ko
|
||||
if [ "$?" -ne "0" -a "$?" -ne "1" ]; then
|
||||
status=1
|
||||
fi
|
||||
/sbin/rmmod /lib/modules/misc/libiscsi.ko
|
||||
if [ "$?" -ne "0" -a "$?" -ne "1" ]; then
|
||||
status=1
|
||||
fi
|
||||
/sbin/rmmod /lib/modules/misc/scsi_transport_iscsi.ko
|
||||
if [ "$?" -ne "0" -a "$?" -ne "1" ]; then
|
||||
status=1
|
||||
fi
|
||||
}
|
||||
|
||||
restart()
|
||||
{
|
||||
stop
|
||||
/bin/sleep 1
|
||||
start
|
||||
|
||||
}
|
||||
|
||||
ISCSI_INIT_KO=/lib/modules/misc/iscsi_tcp.ko
|
||||
|
||||
[ -f $ISCSI_INIT_KO ] || exit 0
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
start
|
||||
;;
|
||||
stop)
|
||||
stop
|
||||
;;
|
||||
restart)
|
||||
stop
|
||||
start
|
||||
;;
|
||||
*)
|
||||
/bin/echo $"Usage: $0 {start|stop|restart}"
|
||||
exit 1
|
||||
esac
|
||||
|
||||
exit $RETVAL
|
||||
Reference in New Issue
Block a user