@educasitas

martes, 5 de octubre de 2010

Bad Interpreter en Script GNU/Linux


Cuánto tiempo sin escribir. Vamos a ver si recuperamos un poco el ritmo que tengo muchos temas interesantes que contar.

Para empezar, un problema de estos tontos, pero que te hacen dar un par de vueltas hasta que encuentras la solución.

Después de currarme un script para arrancar y parar un JBoss AS en CentOS (también válido para Red Hat y Fedora).



#! /bin/sh
# chkconfig: 345 20 80
# description: Start and stops JBoss Application Server
#
# /etc/init.d/jboss: Start and stop JBoss AS
ECHO=/bin/echo
TEST=/usr/bin/test
JBOSS_START_SCRIPT=/apps/jboss/bin/run.sh
JBOSS_STOP_SCRIPT=/apps/jboss/bin/shutdown.sh

$TEST -x $JBOSS_START_SCRIPT || exit 0
$TEST -x $JBOSS_STOP_SCRIPT || exit 0

start() {
$ECHO -n "Starting JBoss"
su - jboss -c "$JBOSS_START_SCRIPT -c default -b 0.0.0.0 > /dev/null 2> /dev/null &"
$ECHO "."
}

stop() {
$ECHO -n "Stopping JBoss"
su - jboss -c "$JBOSS_STOP_SCRIPT -S > /dev/null &"
$ECHO "."
}

case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
sleep 30
start
;;
*)
$ECHO "Usage: jboss {start|stop|restart}"
exit 1
esac
exit 0



Al ejecutarlo me estaba dando un error bastante tonto.

jboss@localhost:/etc/init.d # ./jboss start
sh: ./jboss: /bin/sh^M: bad interpreter: No such file or directory

Pues nada, esto es una tontería por haber copiado un script hecho en Windows a GNU/Linux, la solución:

jboos@localhost:/etc/init.d # dos2unix jboss

Y nada, si llegas hasta aquí encontrando este error, que menos que decirte, "Bienvenido al maravilloso mundo de la Administración de Sistemas"

No hay comentarios:

Publicar un comentario