Script de inicio de darkice para el Ubuntu
Written by: daniel
May 31, 2008
Darkice es uno de los programas más populares, a la hora de montar una radio online sobre el GNU/Linux. Es bastante estable y funciona bien con el Icecast2.
Sin embargo, la versión que está en los repositorios tiene dos pegas:
1) no tiene soporte para emisión en el formato mp3. Y aunque el formato libre ogg está ganando cada vez más popularidad, todavía hay mucha gente que espera tener un stream mp3.
Para resolver este problema, hay que compilar el programa desde el código fuente. Es bastante fácil y puedes encontrar una guía aquí.
2) el programa no funciona por defecto en modo de demonio. Por supuesto podríamos arrancarlo con
sudo darkice -c /etc/config.cfg &
para ponerlo en el segundo plano, pero no tenemos una opción fácil para iniciarlo automáticamente por ejemplo cuando arranca el sistema. El programa tampoco crea un archivo de identificación de proceso (ing: pid file), que podría servirnos si tenemos un sistema de monitorización de servicios como por ejemplo el monit.
Así que, tomando el archivo de aranque que viene con la instalación de icecast2 como modelo, he creado uno para el darkice.
#! /bin/sh
#
# Darkice init file
#
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/local/bin/darkice
NAME=darkice
DESC=darkice
test -x $DAEMON || exit 0
# Defaults
CONFIGFILE=”/etc/darkice.cfg”
USERID=root
GROUPID=root
PIDFILE=”/var/run/darkice.pid”
set -e
case “$1″ in
start)
echo -n “Starting $DESC: ”
start-stop-daemon –start –quiet –chuid $USERID:$GROUPID \
-b -m -p $PIDFILE –exec $DAEMON — -c $CONFIGFILE
echo “$NAME.”
;;
stop)
echo -n “Stopping $DESC: ”
start-stop-daemon –stop –oknodo –quiet -p $PIDFILE
echo “$NAME.”
;;
reload|force-reload)
echo “Reloading $DESC configuration files.”
start-stop-daemon –stop –signal 1 –quiet -p $PIDFILE
;;
restart)
echo -n “Restarting $DESC: ”
start-stop-daemon –stop –oknodo –quiet -p $PIDFILE
sleep 1
start-stop-daemon –start –quiet –chuid $USERID:$GROUPID \
-b -m -p $PIDFILE –exec $DAEMON — -c $CONFIGFILE
echo “$NAME.”
;;
*)
echo “Usage: $0 {start|stop|restart|reload|force-reload}” >&2
exit 1
;;
esac
exit 0
Ahora ya podemos ejecutar el darkice con el tradicional:
sudo /etc/init.d/darkice start
De la misma manera podemos crear scripts para otros programas que normalmente no los tienen.
Posted in


