Lanzar el “NO-IP Dynamic Client Updater” en el inicio

Tiempo estimado de lectura < 2 min

En la última anotación expliqué cómo instalar el cliente de NO-IP para la actualización automática de nuestra IP. Por lo general, si el objetivo de la Raspberry Pi es mantener el sitio web, lo lógico será tener esta aplicación siempre funcionando y, por qué no, que se ejecute con el inicio del computador si no queremos estar pendientes de iniciarlo manualmente cada vez que encendamos nuestra Raspberry Pi (qué cruz, ¿no?).

Antes de nada, decir que me he basado en este post en inglés. Recomiendo ese blog.

Tarta de frambuesa... *babas*

Parece ser que hay varias maneras de iniciar de manera automática un programa en Linux, pero el chico del post se decanta por la opción de crear un script de inicialización en /etc/init.d y registrarlo utilizando update-rc.d.

La operación consiste en:

  • Crear el script.
  • Probarlo.
  • Registrarlo.

Lo primero es crear el script:

[code language=”bash”]
sudo nano /etc/init.d/NameOfYourScript
[/code]

En éste incluimos la siguiente información (algunos parámetros se pueden variar ligeramente):

[code language=”bash”]
#! /bin/sh
# /etc/init.d/noip

### BEGIN INIT INFO
# Provides:          noip
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Simple script to start a program at boot
# Description:       A simple script from <a href="http://www.stuffaboutcode.com/">www.stuffaboutcode.com</a> which will start / stop a program a boot / shutdown. (Stuffaboutcode es el blog del chico)
### END INIT INFO

# If you want a command to always run, put it here

# Carry out specific functions when asked to by the system
case "$1" in
  start)
    echo "Starting noip"
    # run application you want to start
    /usr/local/bin/noip2
    ;;
  stop)
    echo "Stopping noip"
    # kill application you want to stop
    killall noip2
    ;;
  *)
    echo "Usage: /etc/init.d/noip {start|stop}"
    exit 1
    ;;
esac

exit 0
[/code]

Guardamos (Ctrl+O en el editor nano) y salimos (Ctrl+X).

Antes de registrarlo, lo probamos, no vaya a ser que hayamos escrito algo mal y se nos cuelgue la Pi al encenderla…

[code language=”bash”]
# Hacemos que el script sea ejecutable.
sudo chmod 755 /etc/init.d/NameOfYourScript

# Probamos a iniciar y parar (o viceversa, si ya estaba el proceso corriendo)
sudo /etc/init.d/NameOfYourScript start
sudo /etc/init.d/NameOfYourScript stop
[/code]

Una vez hayamos comprobado que está bien, registramos el script para que la Raspberry lo lance en el inicio:

[code language=”bash”]
sudo update-rc.d NameOfYourScript defaults
[/code]

Si en algún momento queremos eliminarlo del inicio:

[code language=”bash”]
sudo update-rc.d -f NameOfYourScript remove
[/code]

¡Ciao!

Lanzar el “NO-IP Dynamic Client Updater” en el inicio

Leave a Reply

Your email address will not be published. Required fields are marked *