He estado intentando configurar el director de bacula en un sistema debian 8 y encontré que ejecutando el comando bacula-dir
comienza el director correctamente, pero service bacula-director start
no. corriendo sudo service bacula-director status
Despues de iniciar el servicio, cede.
● bacula-director.service - LSB: Start Bacula Director at boot time
Loaded: loaded (/etc/init.d/bacula-director)
Active: active (exited) since Mon 2017-05-15 22:12:00 PDT; 16min ago
Process: 5614 ExecReload=/etc/init.d/bacula-director reload (code=exited, status=0/SUCCESS)
Process: 5418 ExecStart=/etc/init.d/bacula-director start (code=exited, status=0/SUCCESS)
May 15 22:12:00 debian-media systemd[1]: Starting LSB: Start Bacula Director at boot time...
May 15 22:12:00 debian-media bacula-director[5418]: Starting Bacula Director...: bacula-dir.
May 15 22:12:00 debian-media systemd[1]: Started LSB: Start Bacula Director at boot time.
May 15 22:13:04 debian-media systemd[1]: Reloading LSB: Start Bacula Director at boot time.
May 15 22:13:04 debian-media bacula-director[5614]: Reloading Bacula Director...: bacula-dir
May 15 22:13:04 debian-media systemd[1]: Reloaded LSB: Start Bacula Director at boot time.
May 15 22:28:20 debian-media systemd[1]: Started LSB: Start Bacula Director at boot time.
los active (exited)
Parece sospechoso ya que los otros daemons de bacula son active (running)
. Además, la salida de ps -A
no muestra un proceso para el director, mientras que con el inicio manual, lo hace.
La definición de servicio del director de bacula es un script de inicio (que me parece impenetrable) instalado con el director a través de apt-get
. Además de crear un archivo de unidad del sistema para reemplazar el script de inicio, ¿cómo puedo iniciar el director como un servicio?
bacula guión de inicio del director
#! /bin/sh
### BEGIN INIT INFO
# Provides: bacula-director
# Required-Start: $remote_fs $syslog
# Should-Start: bacula-fd postgresql mysql
# Required-Stop: $remote_fs $syslog
# Should-Stop: bacula-fd postgresql mysql
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start Bacula Director at boot time
# Description: bacula-director is the daemon that supervises all the
# backup, restore, verify and archive operations. The
# system administrator uses the Bacula Director to schedule
# backups and to recover files.
### END INIT INFO
# bacula-director SysV init script for Bacula-Director.
#
# Written by Miquel van Smoorenburg <miquels@cistron.nl>.
# Modified for Debian GNU/Linux by Ian Murdock <imurdock@gnu.ai.mit.edu>.
# Customized for Bacula by Jose Luis Tallon <jltallon@adv-solutions.net>
#
set -e
PATH=/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/sbin/bacula-dir
NAME="bacula-dir"
PORT=9101
DESC="Bacula Director"
if [ ! -x $DAEMON ] ; then
echo "No bacula-director SQL package installed"
exit 0
fi
if [ -n "`getent services bacula-dir`" ]; then
PORT=`getent services bacula-dir | awk '{ gsub("/tcp","",$2); print $2; }'`
fi
PIDFILE=/var/run/bacula/$NAME.$PORT.pid
. /lib/lsb/init-functions
. /usr/share/bacula-common/common-functions.init
if [ -r /etc/default/$NAME ]; then
. /etc/default/$NAME
fi
CONFIG="${CONFIG:-/etc/bacula/$NAME.conf}"
create_var_run_dir
get_pid()
{
if [ -r "$1" ]; then pid="`cat $1`";
else pid=""; fi
}
kill_pid()
{
kill -$1 $2 2>/dev/null || true
}
# do_start()
do_start()
{
start-stop-daemon --start --quiet --pidfile $PIDFILE \
--oknodo --exec $DAEMON -- -c $CONFIG $ARGS
}
# do_stop()
do_stop()
{
start-stop-daemon --oknodo --stop --quiet --pidfile $PIDFILE \
--retry TERM/30/KILL/5 --exec $DAEMON -- -c $CONFIG $ARGS
}
########################################################################
case "$1" in
start)
if [ "$ENABLED" = "no" ]; then
log_failure_msg "Not starting $DESC: disabled via /etc/default/$NAME"
exit 0
fi
create_var_run_dir
log_daemon_msg "Starting $DESC..." "$NAME"
if do_start ; then
log_end_msg 0
else
log_end_msg 1
fi
;;
stop)
log_daemon_msg "Stopping $DESC..." "$NAME"
if do_stop ; then
log_end_msg 0
else
log_end_msg 1
fi
;;
reload)
log_daemon_msg "Reloading $DESC..." "$NAME"
get_pid $PIDFILE
if [ -n "$pid" ]; then kill_pid HUP $pid ;
else do_start ;
fi
;;
restart|force-reload)
$0 stop
$0 start
;;
status)
status_of_proc -p $PIDFILE $DAEMON $NAME
;;
*)
N=/etc/init.d/$NAME
# echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2
echo "Usage: $N {start|stop|restart|reload|force-reload|status}" >&2
exit 1
;;
esac
bacula-dir /etc/bacula/bacula-dir.conf -dt -f -t
?