Группа :: Система/Основа
Пакет: slurm
Главная Изменения Спек Патчи Исходники Загрузить Gear Bugs and FR Repocop
#!/bin/sh
#
# slurmd The compute node daemon for SLURM.
#
### BEGIN INIT INFO
# Provides: slurm
# Required-Start: $udevd
# Required-Stop: $udevd
# Default-Start:
# Default-Stop:
# Description: The compute node daemon for SLURM
# Short-Description: start and stop slurm
### END INIT INFO
#
# chkconfig: - 90 10
# description: slurmd is the compute node daemon of SLURM.
# It monitors all tasks running on the compute node, accepts work (tasks),
# launches tasks, and kills running tasks upon request.
# processname: slurmd
# config: /etc/slurm.conf
# pidfile: /var/run/slurmd.pid
# Do not load RH compatibility interface.
WITHOUT_RC_COMPAT=1
# Source function library.
. /etc/init.d/functions
PIDFILE=/var/run/slurmd.pid
LOCKFILE=/var/lock/subsys/slurmd
RETVAL=0
start()
{
PRIVATE_KEY=$(sed -n '/^[[:blank:]]*JobCredentialPrivateKey[[:blank:]]*=/s/.*=[[:blank:]]*\(.*\)[[:blank:]]*$/\1/p' /etc/slurm.conf)
PUBLIC_CERTIFICATE=$(sed -n '/^[[:blank:]]*JobCredentialPublicCertificate[[:blank:]]*=/s/.*=[[:blank:]]*\(.*\)[[:blank:]]*$/\1/p' /etc/slurm.conf)
if [ ! -e "$PRIVATE_KEY" ]; then
echo "Error: Can't find JobCredentialPrivateKey file ($PRIVATE_KEY) " >&2
return 1
fi
if [ ! -e "$PUBLIC_CERTIFICATE" ]; then
echo "Error: Can't find JobCredentialPublicCertificate file ($PUBLIC_CERTIFICATE) " >&2
return 1
fi
start_daemon --pidfile "$PIDFILE" --lockfile "$LOCKFILE" --expect-user root -- slurmd
RETVAL=$?
return $RETVAL
}
stop()
{
stop_daemon --pidfile "$PIDFILE" --lockfile "$LOCKFILE" --expect-user root -- slurmd
RETVAL=$?
return $RETVAL
}
restart()
{
stop
start
}
reload()
{
msg_reloading slurmd
scontrol reconfigure
RETVAL=$?
return $RETVAL
}
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
reload)
reload
;;
restart)
restart
;;
condstop)
if [ -e "$LOCKFILE" ]; then
stop
fi
;;
condrestart)
if [ -e "$LOCKFILE" ]; then
restart
fi
;;
condreload)
if [ -e "$LOCKFILE" ]; then
reload
fi
;;
status)
status --pidfile "$PIDFILE" --expect-user root -- slurmd
RETVAL=$?
;;
*)
msg_usage "${0##*/} {start|stop|reload|restart|condstop|condrestart|condreload|status}"
RETVAL=1
esac
exit $RETVAL