Files
scst/iscsi-scst/etc/initd/initd.debian
Vladislav Bolkhovitin 9847aa17ba - A bunch of minor, mostly stability related, fixes.
- Docs update


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@248 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-01-24 10:56:35 +00:00

118 lines
2.5 KiB
Bash

#!/bin/sh
#
# chkconfig: - 39 35
# description: Starts and stops the iSCSI target
# debianized start-stop script
PID_FILE=/var/run/iscsi-scstd.pid
CONFIG_FILE=/etc/iscsi-scstd.conf
DAEMON=/usr/local/sbin/iscsi-scstd
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin
# Don't touch this "memsize thingy" unless you are blessed
# with knowledge about it.
MEM_SIZE=1048576
configure_memsize()
{
if [ -e /proc/sys/net/core/wmem_max ]; then
echo ${MEM_SIZE} > /proc/sys/net/core/wmem_max
fi
if [ -e /proc/sys/net/core/rmem_max ]; then
echo ${MEM_SIZE} > /proc/sys/net/core/rmem_max
fi
if [ -e /proc/sys/net/core/wmem_default ]; then
echo ${MEM_SIZE} > /proc/sys/net/core/wmem_default
fi
if [ -e /proc/sys/net/core/rmem_default ]; then
echo ${MEM_SIZE} > /proc/sys/net/core/rmem_default
fi
if [ -e /proc/sys/net/ipv4/tcp_mem ]; then
echo "${MEM_SIZE} ${MEM_SIZE} ${MEM_SIZE}" > /proc/sys/net/ipv4/tcp_mem
fi
if [ -e /proc/sys/net/ipv4/tcp_rmem ]; then
echo "${MEM_SIZE} ${MEM_SIZE} ${MEM_SIZE}" > /proc/sys/net/ipv4/tcp_rmem
fi
if [ -e /proc/sys/net/ipv4/tcp_wmem ]; then
echo "${MEM_SIZE} ${MEM_SIZE} ${MEM_SIZE}" > /proc/sys/net/ipv4/tcp_wmem
fi
}
RETVAL=0
iscsi_scstd_start()
{
echo -n "Starting iSCSI-SCST target service: "
# configure_memsize
modprobe -q crc32c
modprobe iscsi-scst
start-stop-daemon --start --exec $DAEMON --quiet
RETVAL=$?
if [ $RETVAL -eq 0 ]; then
echo "succeeded."
else
echo "failed."
rmmod iscsi-scst
fi
}
iscsi_scstd_stop()
{
echo -n "Stopping iSCSI-SCST target service: "
start-stop-daemon --stop --quiet --exec $DAEMON --pidfile $PID_FILE
RETVAL=$?
if [ $RETVAL -eq 0 ]; then
echo "succeeded."
else
echo "failed."
fi
# ugly, but pid file is not removed ba iscsi-scstd
rm -f $PID_FILE
echo -n "Removing iSCSI-SCST target modules: "
rmmod -w iscsi-scst
RETVAL=$?
modprobe -r crc32c 2>/dev/null
if [ $RETVAL -eq 0 ]; then
echo "succeeded."
else
echo "failed."
exit 1
fi
}
case "$1" in
start)
iscsi_scstd_start
;;
stop)
iscsi_scstd_stop
;;
restart)
iscsi_scstd_stop
sleep 1
iscsi_scstd_start
;;
status)
PID=`pidof iscsi-scstd`
if [ $PID ]; then
echo "iSCSI-SCST target is running at pid $PID"
else
echo "no iSCSI-SCST target found!"
exit 1
fi
;;
*)
echo $"Usage: $0 {start|stop|restart|status|dump}"
exit 1
esac
exit 0