aMule Forum

Spanish => sp_Linux => Topic started by: MiTH on May 07, 2005, 04:46:14 PM

Title: Script para lanzar el amuled
Post by: MiTH on May 07, 2005, 04:46:14 PM
Buenas a todos. En primer lugar felicitaros ya probé hace mucho amule y me gustó, pero debido a que no tenía el core separado del gui seguí tirando de mi mldonkey que dejo funcionadno en el servidor y controlo desde otro ordenador.

Despues del anuncio de la versión 2.0 de amule y el descubrimiento de que ya incorporaba un modo de daemon para ejecutarse.

Despues de bajarme el codigo fuente y compilar por un lado el amuled y por otro el gui externo tengo que reconocer que el trabajo esta dando sus frutos  :baby: :baby:

Despues de las felicitaciones vienen mis cuestiones.

Intento crear un script de inicio para el init.d que voy a dejar en una debian. En mi casa la corriente eléctrica tiene la mala costumbre de irse de vez en cuando y luego nunca me acuerdo de lanzar el demonio. Mis intentos iniciales fueron algo así:

Code: [Select]
PATH=/bin:/usr/bin:/usr/local/bin/:/sbin/:/usr/sbin/
PIDFILE=/var/run/amuled.pid
DAEMON=/usr/local/bin/amuled
USER=amule

case "$1" in
  start)
    echo -n "Starting aMuled : amuled"
    start-stop-daemon --chuid $USER --user $USER --start --pidfile $PIDFILE --exec $DAEMON --background
    echo "."
    ;;
  stop)
    echo -n "Stopping aMuled: amuled"
    start-stop-daemon --stop --pidfile $PIDFILE --exec $DAEMON
    echo "."
    ;;
  reload)
    echo "Not implemented."
    ;;
  force-reload|restart)
    sh $0 stop
    sh $0 start
    ;;
  *)
    echo "Usage: /etc/init.d/amuled-server {start|stop|restart|force-reload|reload}"
    exit 1
    ;;
esac

exit0

Como es lógico tengo creado el usuario amule y su home para que pille allí la configuración.
Con este código lo que me ocurre es que en teoría, aunque el star-stop-daemon ejecuta (o eso parece) el proceso amuled como usuario amule el propio programa insiste en pensar que se ejecuta como root e intenta buscar el directorio .aMuled en la carpeta de root. Obviamente debian dice que lo esta ejecutando el usuario amule y no le da permisos para entrar.

Podía ejecutarlo como root sin problema, pero no me gusta nada dejar estos procesos ejecutandose como root.


¿Existe algún script ya creado para tales menesteres o soy el primer valiente que lo intenta? (esto último lo dudo)

En sugerencias ya os pondré que estaría bien poder decirle al amuled de donde tiene que pillar los archivos de configuración, con lo que podríamos ponerlos en el /etc/default/amule.conf y olvidarnos de tener que buscar en una carpeta de un home. Algo parecido a lo que hace el mldonkey.

Saludos para todos.
Title: Re: Script para lanzar el amuled
Post by: yoyoio on May 08, 2005, 03:24:57 PM
Pienso que es por la variable HOME, parece que el stop-start-daemon no la cambia a la del usuario amule, prueba a poner HOME=tu_home_del_usuario_amule en la script.

La opcion -f es para forzar background, pero asi igual no te funciona lo del pid.


Saludos
Title: Re: Script para lanzar el amuled
Post by: MiTH on May 08, 2005, 06:43:50 PM
Pues efectivamente se debia a la variable de entorno HOME. Simplemente la cambio antes de ejecutar el start-stop-daemon y la vuelvo a dejar como estaba posteriormente.

El Script definitivo por si le interesa a alguien ha quedado tal que así:

Code: [Select]
PATH=/bin:/usr/bin:/usr/local/bin/:/sbin/:/usr/sbin/
DAEMON=/usr/local/bin/amuled
USER=amule

case "$1" in
  start)
    echo -n "Starting aMule : amuled"
    export HOME=/home/amule/
    start-stop-daemon --chuid $USER --user $USER --start --exec $DAEMON --background
    export HOME=/root/
    echo "."
    ;;
  stop)
    echo -n "Stopping aMule : amuled"
    start-stop-daemon --stop --chuid $USER --user $USER --exec $DAEMON
    echo "."
    ;;
  reload)
    echo "Not implemented."
    ;;
  force-reload|restart)
    sh $0 stop
    sh $0 start
    ;;
  *)
    echo "Usage: /etc/init.d/amuled-server {start|stop|restart|force-reload|reload}"
    exit 1
    ;;
esac

exit 0

Muchas gracias por la ayuda.
Title: Re: Script para lanzar el amuled
Post by: overman on May 19, 2005, 12:54:12 AM
buenas.. voy con una pregunta que nada que ver con el amule y a la ves iene que ver (un lio jaja). Bueno la cosa es que quiero hacer lo del script que comentan aqui pero no se mucho de como hacerlo, estuve viendo en el dir etc/init.d y vi que hay monton de scripts  y mi pregunta es .
1- todos esos scripts son los que se ejecutan al inicio ?
2 si es asi creo un archivo te texto que el script para ejecutar el amule y que extencion le pongo?

bueno espero puedan ayudar a este novato en linux  asi algun dia yo pueda devolver el favor.
Saluds y gracias :D
Title: Re: Script para lanzar el amuled
Post by: Jacobo221 on May 19, 2005, 11:59:17 PM
creas el archivo de script, lo pones donde quieras, lo haces ejecutable (chmod a+x) y le haces un link desde el directorio de tus inits (por ejemplo, /etc/rc2.d/). pero si no sabes muy bien de que va esto, lo mejor es que no lo toques por ahora... ;-)

un saludo!
Title: Re: Script para lanzar el amuled
Post by: fran_javi_fer on May 29, 2005, 05:26:15 PM
Buenas a tod@s:

En mi debian SID es imposible utilizar el script porque no arranca el demonio ni a tiros, parece que funciona bien pero no lo arranca. Ya se que con tanto dato que he dado va a ser imposible que me ayudeis pero la esperanza es lo ultimo que se pierde.
Title: Re: Script para lanzar el amuled
Post by: Jacobo221 on May 29, 2005, 05:59:00 PM
pues si, con toda esa info me saturo embriagado por los datos.

mira si en la consola sale algun error o algo. o por lo menos explica como lo has puesto y que has hecho.
Title: Re: Script para lanzar el amuled
Post by: fran_javi_fer on May 30, 2005, 07:45:57 PM
Siento lo de la informacion pero es que realmente no da ninguna. Si ejecuto /etc/init.d/amuled-server start pone esto:

Starting aMule : amuled.

si intento conectar conm el remote-gui no puede porque no funciona y si intento parar el demonio me dice que no esta funcionando y haciendo un ps realmente se ve que no funciona.

Saludos.
Title: Re: Script para lanzar el amuled
Post by: Jacobo221 on May 30, 2005, 09:42:04 PM
ejecutalo manualmente el script a ver que pasa. es decir, no desde el init.d sino tu mismo manualmente
Title: Re: Script para lanzar el amuled
Post by: fran_javi_fer on May 31, 2005, 01:14:12 AM
Gracias Jacobo221 por tu ayuda pero he conseguido solucionar el problema que ha resultado ser con el usuario amule de modo que lo he cambiado por el usuario que uso yo normalmente y parece que funciona.

Ahora lo que me pasa es que al principio el interfaz web funciona bien pero al de un rato funcionando el amuled el interfaz web deja de funcionar es decir el navegador me da un error de que no puede conectar en dicho puerto pero el remote-gui y el amulecmd siguen conectandose con el demonio, ¿puede ser el fallo del interfaz web debido a la compresion gzip del mismo?

Gracias a todos por vuestra atencion.
Title: Re: Script para lanzar el amuled
Post by: Jacobo221 on May 31, 2005, 03:33:10 AM
sera que la interfaz se cuelga. cuando eso te pase, killall -9 amuleweb && amuleweb

y a conetcat como siempre ;)
Title: Re: Script para lanzar el amuled
Post by: fran_javi_fer on May 31, 2005, 12:19:26 PM
Pues tienes razon Jacobo221 es la interfaz que se cuelga y ademas lo hace a la velocidad de la luz y me he dado cuenta que en ralidad me da una violacion de segmento.
Title: Re: Script para lanzar el amuled
Post by: Jacobo221 on May 31, 2005, 01:02:44 PM
es extraño que se te cuelgue tanto. prueba a compilar amuleweb tu mismo. probablemente el package tenga algun problema en tu distro
Title: Re: Script para lanzar el amuled
Post by: fran_javi_fer on May 31, 2005, 07:28:12 PM
son los paquetes debian cvs de ayer y con los de antes de ayer me pasaba lo mismo. Intentare compilarlo yo pero no se si sere capaz.
Title: Re: Script para lanzar el amuled
Post by: Jacobo221 on May 31, 2005, 10:08:12 PM
no deberias tener problemas si hechas un vistazo a http://wiki.amule.org
Title: Re: Script para lanzar el amuled
Post by: eL_Suso on July 25, 2005, 04:44:55 PM
Hola!
Intento utilizar el script de MiTH haciendo lo siguiente:
Copio el segundo script, el q dice q es el definitivo y lo copio en /etc/init.d/amule-server.
Cambio la linea USER=amule por USER=jesus, q es el usuario q normalmente arranca amuled.
Le doy permisos de ejecución a todo dios, es decir chmod a+r /etc/init.d/amule-server
Lo ejecuto haciendo /etc/init.d/amule-server start siendo root
el resultado es que me pone:
Starting amuled: (muy rapido) y no arranca nada
lo he probado a hacer como jesus y sigo en las mismas, dándome otro error:
Starting aMule : amuledstart-stop-daemon: Unable to set initgroups() with gid 1000
¿qué debo hacer para que funcione el script? Gracias anticipadas


-----------
Edito y me autorrespondo:
hay que cambiar la línea
    export HOME=/home/amule/
por...
    export HOME=/home/del/usuario
Title: Re: Script para lanzar el amuled
Post by: Jacobo221 on July 27, 2005, 07:55:30 AM
> Le doy permisos de ejecución a todo dios, es decir chmod a+r /etc/init.d/amule-server

deberias hacer "a+rx" !
Title: Re: Script para lanzar el amuled
Post by: Jacobo221 on July 27, 2005, 07:56:15 AM
> Le doy permisos de ejecución a todo dios, es decir chmod a+r /etc/init.d/amule-server

deberias hacer "a+rx" !

de todas maneras, no creo que esp splucione tu problema. hm, esop algo raro. Cuando vuelva de las vacaciones le hecho un vistazo al tema. Recuerdamelo si ves que me olvido ;)

un saudo!
Title: Re: Script para lanzar el amuled
Post by: eL_Suso on July 28, 2005, 03:56:30 PM
Nada, tranqui, ya edite y me autorrespondí, tenía que cambiar también la variable del home del usuario aparte del user :D y ahora que me doy cuenta le daba permisos de ejecución con chmod a+x, q me confundí al escribir aquí. gracias de todas formas :P
Title: Re: Script para lanzar el amuled
Post by: Jacobo221 on August 04, 2005, 07:45:48 PM
de nada ;)

aqui estaremos para lo que sea.
Title: Re: Script para lanzar el amuled
Post by: Eleka on September 01, 2005, 05:31:41 PM
Bueno ... pues acabo de encontrar el script y lo he colocado en /etc/init.d con el nombre de amule-daemon ...

Ahora que tengo que hacer para que se ejecute en el arranque del sistema? Se que debo meter un enlace simbólico en /etc/rc2.d y otro en /etc/rc0.d para arrancar el dominio y pararlo repectivamente, y que deben tener como nombre SXYamule-daemon y KXYamule-daemon respectivamente. .. pero es que lo he hecho y cuando el sistema arranca, amuled no arranca en ningún lado  ...

¿cómo hago?

P.D. ¿habría que modificar el script y añadirle al principio #!/bin/sh ?
Title: Re: Script para lanzar el amuled
Post by: Eleka on September 02, 2005, 01:03:06 AM
Buen, pues me auto-respondo.

Modifiqué unas cuantas cosas del script, como la línea inicial #!/bin/sh y cosas para hacerlo un poco más genérico, poca cosa la verdad, sobre todo con lo de los usuarios, que opté por ponerle directamente mi usuario que era donde tenía todos los archivos de configuración y demás.

Para luego meterlo en las carpetas rcN.d usé update-rc.d amule-daemon defaults 95 y todo fue como la seda ...

Muchas gracias por el script y por todo!
Title: Re: Script para lanzar el amuled
Post by: Jacobo221 on September 05, 2005, 08:42:55 PM
un placer! ;)
Title: Re: Script para lanzar el amuled
Post by: Qk__ on November 04, 2005, 10:01:41 AM
Hola, he realizado todos los pasos indicados para el script, y al ejecutar me sale el siguiente error:

[root@localhost init.d]# ./amule-server start
Starting aMule : amuled./amule-server: line 11: start-stop-daemon: command not found
.

he mirado las path, y está todo correcto, alguna sugerencia? gracias.
Title: Re: Script para lanzar el amuled
Post by: Jacobo221 on November 04, 2005, 03:22:52 PM
el comando start-stop-daemon no existe en tu sistema. quizas necesitas ser root para ejecutarlo o sencillamente tu distribucion no lo incluye. pregunta en los foros de tu distro cual es el equivalente de que dispones y cambia el comando en el script.

un saludo.
Title: Re: Script para lanzar el amuled
Post by: Qk__ on November 04, 2005, 03:37:37 PM
Gracias, es una mandriva2006, ya he preguntado en sus foros, a ver si me responden
Title: Re: Script para lanzar el amuled
Post by: Jacobo221 on November 04, 2005, 05:35:07 PM
de nada. yo no te puedo ayudar. nunca he usado mandrake, sorry :( espero que te respondan. sino... hay otras alternativas tales como no ejecutarlo como daemon del sistema, sino local. pero bueno, primero, a ver si te responden.

un salduo.
Title: /etc/rc.d/init.d/amuled
Post by: wardevil on November 06, 2005, 12:39:11 AM
Code: [Select]
#!/bin/sh
#
# Startup script for aMuled
#
# chkconfig: 345 80 30
#
# description: Starts the aMule deamon. The service is available \
#              via [URL]http://localhost:4711.[/URL] The deamon runs under \
#              the amule account
#
# processname: amule
USER=yourusername
RETVAL=0

# Source function library.
if [ -f /etc/init.d/functions ] ; then
  . /etc/init.d/functions
elif [ -f /etc/rc.d/init.d/functions ] ; then
  . /etc/rc.d/init.d/functions
else
  exit 0
fi

# Avoid using root's TMPDIR
unset TMPDIR

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0

[ -f /usr/bin/amuled -o -f /usr/local/bin/amuled  ] || exit 0


start() {
         printf "Starting the aMule daemon: "
         daemon  --user $USER amuled -f &
         #RETVAL is never returned by aMule?
         RETVAL=0
         echo
         [ $RETVAL -eq 0 ] && touch /var/lock/subsys/amuled || \
          RETVAL=1
         return $RETVAL
  }

  stop() {
         printf "Shutting down the aMule daemon: "
         killproc amuled
         RETVAL=$?
         [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/amuled
         echo "Killing webserver!!" && killall amuleweb
         
         return $RETVAL
         
 }
 # status() {
  #       status amuled
  #       RETVAL=$?
  #}
  restart() {
         $0 stop
         $0 start
 }
#mdkstatus() {
#       status amuled
#}
# Allow status as non-root.
#if [ "$1" = status ]; then
#      mdkstatus
#       exit $?  
#fi
         
case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  restart)
        restart
        ;;
  reload)
        reload
        ;;
#  status)
#       mdkstatus
#       ;;
  condrestart)
        [ -f /var/lock/subsys/smb ] && restart || :
        ;;
  *)
        echo $"Usage: $0 {start|stop|restart|reload|status|condrestart}"
        exit 1
esac    

exit $?

Este ficheiro esta localizado em /etc/rc.d/init.d/

chmod +x /etc/rc.d/init.d/amuled

Este ultimo comando é para fazer o ficheiro executavel.

Este script é o que eu uso para lançar o amuled como um serviço do sistema(system service)
Para arrancar com amuled,as root:
service amuled start

ou para parar o amuled:
service amuled stop

Incluí um comando para matar o webserver para no caso de este não parar ao parar o amuled....assim pára sempre....  :D

Onde diz USER não esquecer de mudar para o username o qual vai correr o amuled


Espero k ajude....  :D
Title: /etc/rc.d/init.d/amule
Post by: wardevil on November 06, 2005, 12:49:29 AM
Code: [Select]
#!/bin/sh
#
# Startup script for aMule
#
# chkconfig: 345 80 30
#
# description: Starts the aMule . The service is available \
#              via [URL]http://localhost:4711.[/URL] The GUI runs under \
#              a user account
#
# processname: amule
USER=yourusername
RETVAL=0

# Source function library.
if [ -f /etc/init.d/functions ] ; then
  . /etc/init.d/functions
elif [ -f /etc/rc.d/init.d/functions ] ; then
  . /etc/rc.d/init.d/functions
else
  exit 0
fi

# Avoid using root's TMPDIR
unset TMPDIR

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0


[ -f /usr/bin/amule -o -f /usr/local/bin/amule  ] || exit 0

export DISPLAY="localhost:0"

start() {
         printf "Starting aMule : "
         daemon  --user $USER amule  &
         #RETVAL is never returned by aMule?
         RETVAL=0
         echo
         [ $RETVAL -eq 0 ] && touch /var/lock/subsys/amule || \
          RETVAL=1
         return $RETVAL
 }
  stop() {  
         printf "Shutting down the aMule daemon: "
         killproc amule
         RETVAL=$?
         [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/amule
         echo "Killing webserver!!" && killall amuleweb
         return $RETVAL
 
 }
# status() {
#        status amule
#        RETVAL=$?
# }
  restart() {
         $0 stop
         $0 start
 }
#mdkstatus() {
#       status amuled
#}
         
 
# Allow status as non-root.
#if [ "$1" = status ]; then
#      mdkstatus
#       exit $?  
#fi
         
case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  restart)
        restart
        ;;
  reload)
        reload
        ;;
#  status)
#       mdkstatus
#       ;;
  condrestart)
        [ -f /var/lock/subsys/amule ] && restart || :
        ;;
  *)
        echo $"Usage: $0 {start|stop|restart|reload|status|condrestart}"
        exit 1
esac    

exit $?

chmod +x /etc/rc.d/init.d/amule

Aqui está outro mas para o amule...experimente e diga como correu....não esquecer de mudar o USER para o user que vai correr o amule:
service amule start

Se alguem usar o vnc pode arrancar no seu desktop:1 apenas mudando a linha 36 de:
export DISPLAY="localhost:0"
para:
export DISPLAY="localhost:1"

para parar o amule como root:
service amule stop

Fácil não?  :D

Happy amuling...

Cheers.....
Title: Re: Script para lanzar el amuled
Post by: Qk__ on November 07, 2005, 04:54:15 PM
Hola, he utilizado el primer script que ha puesto wardevil, y me ha funcionado perfectamente, muchas gracias .

Ahora tengo otro problemilla. He creado un usuario (amule) para que sea el que lance el programa. Le he dado permisos para que todo el mundo pueda leer y escribir en la carpeta .amule, pero no me deja ni añadir servidores (intento añadir con ficheros server.met y a mano, pero no los coge), ni modificar distintos parámetros (si me deja, pero no los guarda). Supongo que será algún problem de permisos, pero no consigo arreglarlo. A ver si me podéis echar un cable. Gracias.
Title: Re: Script para lanzar el amuled
Post by: Jacobo221 on November 07, 2005, 05:49:03 PM
"distitnos parametros" <- cuales?

debes dar permisos de escritura a "otros" o a "user" siendo el pripietario el usuario "amule" al directorio ".amule". ademas, ese usuario debe ser capaz de acceder a todos los directorios padre de este, asi que asegurate de que es asi, sino no sabra que ese directorio existe.
Title: Re: Script para lanzar el amuled
Post by: Qk__ on November 07, 2005, 06:04:55 PM
distintos parametros me refiero a la velocidad de bajada, subida, directorios de incoming y temp, etc.

los permisos están bien, lectura escritura a todo el mundo, tanto /home/amule como /home/amule/.aMule
Title: Re: Script para lanzar el amuled
Post by: Jacobo221 on November 08, 2005, 03:28:05 AM
algo estas hacviendo mal, prueba  ahacerlo manualmente entrando como usuario "amule" y mira a ver que error te da.

en mi opinion, los permisos parecen estar claramente mal.
Title: Re: Script para lanzar el amuled
Post by: Qk__ on November 08, 2005, 04:09:07 PM
Quote
Originally posted by Jacobo221
algo estas hacviendo mal, prueba  ahacerlo manualmente entrando como usuario "amule" y mira a ver que error te da.

en mi opinion, los permisos parecen estar claramente mal.

yo tb creo que el permiso de algún fichero está mal, pero no acierto a adivinar qué fichero es. Hay algún otro fichero que utilice el gui aparte del amule.conf?

Aquí dejo una captura con los permisos:

(http://img14.imageshack.us/img14/9031/captura8to.th.png) (http://img14.imageshack.us/my.php?image=captura8to.png)

Muchas gracias por toda la ayuda que me estáis ofreciendo.
Title: Re: Script para lanzar el amuled
Post by: Jacobo221 on November 08, 2005, 07:22:52 PM
estas usando amule, no? quiero decir, no estas usando el gui remoto de amule supongo... asi pues, si, amule.conf es el unico.
de nuevo, intenta modificar el archivo entrando manualmente como usuario "amule" ("su amule") a ver si puedes
tu problema es realmetne extraño.
tambien podria ser que te hayas quedad con 0 bytes lubres en el disco duro, aunque supongo que eso ya lo habrás comprobado.
Title: Re: Script para lanzar el amuled
Post by: Qk__ on November 08, 2005, 09:29:10 PM
Gracias, el amule.conf sí lo puedo modificar, pero estoy intentando usar el amulegui, por eso preguntaba si había otro archivo. Gracias de nuevo.
Title: Re: Script para lanzar el amuled
Post by: Jacobo221 on November 08, 2005, 10:22:11 PM
remote.conf y gui.conf (o era amulegui.conf?)
Title: Re: Script para lanzar el amuled
Post by: Fitti on January 24, 2006, 08:38:12 PM
Estoy intentando usar el primer script (la version corregida) pero no hace nada, pone lo de iniciando pero luego miro a ver si esta el proceso en ejecucion y no lo esta.

He creado el user amule, he dado permisos de ejecucion al script... He probado con el user que ejecuto el amule normalmente y pasa lo mismo.

He cambiado la ruta de DAEMON para que se ajustara a donde tengo instalado el amuled.

Alguna idea? No da error asi que no se que mirar.

Gracias de antemano, Fitti.
PD: Si lo ejecuto como user me devuelve "Starting aMule : amuledstart-stop-daemon: Unable to set gid to 1001 (Operation not permitted)
"

EDITO:
Ya lo he arreglado, he copiado mi carpeta .aMule al user amule, he cambiado la config de incoming y temp, he cambiado el propietario de la carpeta .aMule y ahora aprece que va.  :D
Title: RE: Script para lanzar el amuled
Post by: tonissssssss on March 18, 2006, 11:54:52 AM
Hola a todos, este es mi spcript para lanzar para Fedora Core 4. Primero decir que al cabo de unos 15 minutos de ejecutarlo se inicia amuleweb y amulecmd; no sé el motivo pero tarda lo mismo que si hago "amule -f"

Comentar que _USUARIO_ es el usuario que utilizarás y  _MiContraseñaEnAmulecmd_ es tu contraseña en amulecmd. ¿ Por qué utilizo ésto y no hago un kill?, porque al salir con el amulecmd, me está guardando lo descargado que está en memoria pero NO en el disco duro, como un sync. Por tanto, si hago kill, pierdo esta parte descargada.

Venga, a ver si alguien se anima con el Debian y el start-stop-daemon

Code: [Select]
#!/bin/sh
# chkconfig: 2345 99 00
# description: Gesiona amuled
# processname: amuled
# config: /home/_USUARIO_/.aMule/amule.conf
# pidfile: /var/run/amuled.pid

# Funciones implicadas a cargar.
if [ -f /etc/init.d/functions ] ; then
. /etc/init.d/functions
else
echo "no se encuentra /etc/init.d/functions"
exit 0
fi      

# Ruta a los binarios.
amulecmd=/usr/local/bin/amulecmd
amuled=${AMULED-/usr/local/bin/amuled -f}
prog=amuled

# Ruta a los ficheros de estado.
pidfile=${PIDFILE-/var/run/amuled.pid}
lockfile=${LOCKFILE-/var/lock/subsys/amuled}
user="--user amuled"
passwordcmd="-P _MiContraseñaEnAmulecmd_"
RETVAL=0

# Función de arranque.
start() {
if [ `pidof $prog` ]
# si ya funciona el amuled
then
statusLocal
RETVAL=$?
# si NO funciona el amule
else
# arranca el servicio
       echo -n $"Starting $prog: "
       daemon $user $amuled
RETVAL=$?
       echo
       [ $RETVAL = 0 ] && touch ${lockfile} && pidof $prog > $pidfile
fi
return $RETVAL        
}

# Función de parada.
stop() {
# mata los amulecmd
for a in `pidof amulecmd`
do
kill -9 $a
done
# mata amuleweb
if [ `pidof amuleweb` ]
then
kill -9 `pidof amuleweb`
fi

if [ `pidof $prog` ]
# si funciona el amuled
then
# para el servicio
echo -n $"Stopping $prog: "
# CIERRA SALVANDO los ficheros mediante el cliente amulecmd
$amulecmd $passwordcmd -c "shutdown" > /dev/null
# por si queda algo vivo....mata el proceso
killproc $prog
RETVAL=$?
echo
[ $RETVAL = 0 ] && rm -f ${lockfile} ${pidfile}
else
rm -f ${lockfile} ${pidfile}
statusLocal
RETVAL=$?
fi
        return $RETVAL
}

# Función que muestra el estado del amuled
statusLocal() {
        status $prog

if [ `pidof amuleweb` ]
# si funciona el amuled
then
echo "y amuleweb ( pid `pidof amuleweb`)"
fi
RETVAL=$?
        return $RETVAL
}


# Menú para elegir la rutina
case "$1" in
  start)
start
;;
  stop)
stop
;;
  status)
statusLocal
;;
  restart)
stop
start
;;
  *)
echo $"Usage: $prog {start|stop|restart|status}"
exit 1
esac

exit $RETVAL
Title: Yo utilizo el script q viene en el wiki de amule
Post by: ricmarblus on May 29, 2006, 01:22:35 AM
#!/bin/bash


NAME=$(basename "$0")
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/bin/amuled
OPTIONS=--only-chuck-norris-would-stop-me
DESC=amuled
USER=debian #A user who already ran amule once to configure it.


test -x "$DAEMON" || exit 0


case "$1" in
  start)
    echo -n "Starting $DESC: "
      su "$USER" -c "$(printf "%q -f %q" "$DAEMON" "$OPTIONS" )"
    echo "$NAME."
    ;;
  stop)
    echo -n "Stopping $DESC: "
      killall --quiet "$DAEMON"
    echo "$NAME."
    ;;
  restart|force-reload)
    echo -n "Restarting $DESC: "
      killall --quiet "$DAEMON"
    sleep 1
      su "$USER" -c "$(printf "%q -f" "$DAEMON" )"
    ;;
  *)
    printf "Usage: %q {start|stop|restart|force-reload}\n" "$0" >&2
    exit 1
    ;;
esac


exit 0