2 # Copyright 1999-2012 Gentoo Foundation
3 # Distributed under the terms of the GNU General Public License v2
6 extra_commands="reload"
8 [[ -f /etc/conf.d/slurm ]] && . /etc/conf.d/slurm
12 [[ ${SLURM_USE_MUNGE} -ne 0 ]] && _need="${_need} munged"
13 [[ ${SLURM_USE_YPBIND} -ne 0 ]] && _need="${_need} ypbind"
18 create_folder_and_set_permission() {
20 # Fix permissions (/tmp is wiped at boot)
21 if [[ "${folder}" == "/tmp" ]]; then
22 eerror "SLURM: folder == ${folder} == /tmp"
25 if [[ "${folder}" == "/var/tmp" ]]; then
26 eerror "SLURM: folder == ${folder} == /var/tmp"
29 checkpath -d -o slurm:slurm ${folder}
33 if [ ! -e "/etc/slurm/slurm.conf" ]; then
34 eerror "Missing config /etc/slurm/slurm.conf"
35 eerror "Customize sample one or generate new by configurator.html"
36 eerror "in slurm doc directory"
40 # Make sure folders exists
41 . /etc/slurm/slurm.conf
42 folders=(${SlurmdSpoolDir} `dirname ${SlurmctldLogFile}` `dirname ${SlurmctldPidFile}` `dirname ${SlurmdLogFile}` `dirname ${SlurmdPidFile}` ${SlurmdSpoolDir} ${StateSaveLocation})
43 for folder in ${folders[*]}; do
44 create_folder_and_set_permission ${folder}
49 ebegin "Starting slurm control daemon"
51 start-stop-daemon --start --quiet --background \
52 --pidfile /var/run/slurm/slurmctld.pid \
55 --exec /usr/sbin/slurmctld -- ${SLURMCTLD_OPTS}
60 ebegin "Stopping slurm control daemon"
61 start-stop-daemon --stop --pidfile /var/run/slurm/slurmctld.pid
66 ebegin "Reloading slurm daemon configuration"
67 start-stop-daemon --signal HUP --pidfile /var/run/slurm/slurmctld.pid