Veamos...
Quiero utilizar un programa, el cual al ejecutarse, lee la configuración dependiendo del directorio donde se encuentre, y si no hay configuración, crea un fichero de configuración por defecto.
Si es desde la shell, un simple cd /blabla y ejecutarlo desde ahi vale perfecto. Sin embargo, necesito crear un script de arranque que haga lo mismo, y para ello, necesito algo equivalente al "start-stop-deamon" de debian y derivados, pero en Fedora.
Los archivos de arranque de Fedora, utilizan una función, llamada "daemon" que se encuentra en el /etc/init.d/functions... peeeeeero no me vale :( start-stop-daemon implementa el flag --chdir para que se ejecute desde un cierto directorio, pero daemon no :S
Como puedo hacerlo de manera "elegante"?
Habia pensado un "cd /blablabla && ejecutaloquesea", pero es un poco cutre :S
Alguna idea? ;D
PD.- El programa es
este, y la versión de Fedora es la Core 6.
-------------------------------------------
EDITO y pego la solución por si le vale a alguien:
#! /bin/sh
#
# streamTranscoder
#
# Written by Miquel van Smoorenburg .
# Modified for Debian
# by Ian Murdock .
#
# Further modified by Keegan Quinn
# for use with Icecast 2
#
# adopted to use with streamTranscoder v3 from oddsock
# by christoph zimmermann
#
# modified to use with Fedora Core 6 by
# Eduardo Minguez
#
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/us r/sbin:/usr/bin
DAEMON=/usr/local/bin/streamTranscoderv3
CONF=/etc/streamTranscoder
NAME=streamTranscoderv3
DESC=streamTranscoderv3
OPTS="-b"
test -x $DAEMON || exit 0
# Defaults
USERID=icecast
GROUPID=icecast
#set -e
case "$1" in
start)
echo -n "Starting $DESC: "
cd $CONF
su $USERID --shell=/bin/bash --session-command="$DAEMON $OPTS"
echo "$NAME." ;;
stop)
echo -n "Stopping $DESC: "
killall $NAME
echo "$NAME." ;;
*)
echo "Usage: $0 {start|stop}" >&2
exit 1 ;;
esac
Es un poco chapucera, pero funciona ;D