mirror of
https://github.com/SCST-project/scst.git
synced 2026-05-17 10:41:26 +00:00
- Docs update git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@248 d57e44dd-8a1f-0410-8b47-8ef2f437770f
118 lines
2.5 KiB
Bash
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
|