start-stop-daemon(8)

NOMBRE
start-stop-daemon - Detiene y arranca demonios del sistema

SINOPSIS
start-stop-daemon [opción...] orden

DESCRIPCIÓN
start-stop-daemon sirve para controlar la creación y finalización de los procesos del sistema. Usando una de las opciones de búsqueda, puede configurar start-stop-daemon para encontrar las instancias de un proceso en ejecución.

Nota :Tenga en cuenta que a menos que se especifique --pidfile, start-stop-daemon se comporta de forma similar a killall(1). start-stop-daemon buscará en la tabla de procesos cualquier proceso que concuerde en nombre, uid y/o gid (si se especifica). Cualquier proceso que concuerde con los parámetros prevendrá a --start de iniciar el demonio. Se mandará a todos los procesos la señal TERM (o la señal especificada mediante --signal o --retry) si se especifica --stop. Debe especificar un fichero pid para los demonios que tengan hijos de larga duración que necesiten sobrevivir a un --stop.

ÓRDENES

-S, --start [--] argumentos
    Comprueba la existencia del proceso especificado. Si este proceso ya existe, start-stop-daemon no hace nada y finaliza con un estado de error 1 (0 si se especifica --oknodo ). Si el proceso no existe, comienza uno nuevo usando el ejecutable especificado por --exec, (o, si se especifica, por --startas ). Cualquier argumento dado en la línea de órdenes después de -- se introduce sin modificación alguna al programa que se va a ejecutar.

-K, --stop
    Comprueba la existencia del proceso especificado. Si este proceso existe, start-stop-daemon envía la señal especificada por --signal, y finaliza con un estado de error 0. Si este proceso no existe, start-stop-daemon termina con un estado de error 1 (0 si se ha especificado la opción --oknodo ). Si se especifica la opción --retry, start-stop-daemon comprobará que el proceso o los procesos han terminado.

-T, --status
    Compruebe la existencia del proceso especificado y devuelve un estado de salida conforme a las acciones de script de arranque («LSB Init Script Actions»).

-H, --help
    Muestra la información de uso y termina.

-V, --version
    Muestra la versión y termina.

OPCIONES DE BÚSQUEDA

-p, --pidfile fichero-pid
    Check whether a process has created the file pid-file. Note: using this matching option alone might cause unintended processes to be acted on, if the old process terminated without being able to remove the pid-file.

-x, --exec ejecutable
    Check for processes that are instances of this executable. The executable argument should be an absolute pathname. Note: this might not work as intended with interpreted scripts, as the executable will point to the interpreter. Take into account processes running from inside a chroot will also be matched, so other match restrictions might be needed.

-n, --name nombre-proceso
    Check for processes with the name process-name. The process-name is usually the process filename, but it could have been changed by the process itself. Note: on most systems this information is retrieved from the process comm name from the kernel, which tends to have a relatively short length limit (assuming more than 15 characters is non-portable).

-u, --user nombre-usuario|uid
    Check for processes owned by the user specified by username or uid. Note: using this matching option alone will cause all processes matching the user to be acted on.

OPCIONES

-g, --group grupo|gid
    Pasa a grupo o gid cuando comienza el proceso.

-s, --signal señal
    Junto con --stop, define la señal enviada al proceso que se desea parar (TERM por omisión).

-R, --retry tiempo-de-espera|acción-programada
    Junto con --stop, especifica que start-stop-daemon compruebe que el proceso o los procesos han terminado. Lo comprobará repetidas veces hasta que no haya ningún proceso que coincida. Si el proceso no termina tomará una decisión determinada por acción-programada. Si se especifica tiempo-de-espera en vez de acción-programada, se usa la secuencia señal/tiempo-de-espera/KILL/tiempo-de-espera, donde señal es la señal definida con --signal. acción-programada es una lista de al menos dos elementos separados por barras (/); cada elemento puede ser un -númerodeseñal o [-]nombre-de-señal, que significa que se debe mandar esa señal, o tiempo-de-espera, que significa que se debe esperar tantos segundos para que el programa termine, o forever, que significa que se repita el resto de la acción programada indefinidamente si es necesario. Si se alcanza el final de la acción programada y no se ha especificado forever, start-stop-daemon termina con un estado de error 2. Si se especifica una acción programada cualquier señal especificada con --signal no se tendrá en cuenta.

-a, --startas nombre-ruta
    Con --start, comienza el proceso definido con nombre-ruta. Si no se define, se usarán los argumentos dados con --exec.

-t, --test
    Muestra las acciones que se realizarían y devuelve el valor apropiado, pero no hace nada.

-o, --oknodo
    Devuelve un estado 0 en vez de 1 si no se realiza (o se vayan a realizar) ninguna acción.

-q, --quiet
    No muestra mensajes informativos, sólo muestra mensajes de error.

-c, --chuid username|uid[:group|gid]
    Cambia a este usuario/uid antes de empezar el proceso. También puede definir un grupo añadiendo : seguido del grupo o el gid, del mismo modo que haría con la orden «chown» (usuario:grupo). Tenga en cuenta que cuando se usa esta opción el grupo primario y complementario también cambian, incluso si no se especifica --group. La opción --group es sólo para grupos de los que el usuario no es miembro (como el grupo nobody).

-r, --chroot directorio-raíz
    Ejecuta «chdir» y «chroot» sobre el directorio-raíz antes de empezar el proceso. Tenga en cuenta que el fichero pid también se escribe después del chroot.

-d, --chdir ruta
    Ejecuta un «chdir» a ruta antes de empezar el proceso. Esto se hace tras «chroot», si se define la opción -r|--chroot. Si no se define, start-stop-daemon ejecutará un «chdir» al directorio raíz antes de empezar el proceso.

-b, --background
    Usado habitualmente con programas que no se separan por sí mismos. Esta opción forzará start-stop-daemon a hacer un fork antes de empezar el proceso, para luego dejarlo en segundo plano. ATENCIÓN: start-stop-daemon no puede comprobar el estado de salida si el proceso no puede ejecutarse por cualquier razón. Esto se hace como último recurso, y sólo tiene sentido usarla en programas donde no tiene sentido que hagan fork por sí mismos, o no si es posible añadir el código para que lo hagan por sí mismos.

-N, --nicelevel entero
    Altera la prioridad del proceso antes de iniciarlo.

-P, --procsched directriz:prioridad
    Altera la directriz de la acción programada del proceso y la prioridad de la acción programada antes de iniciarlo. Puede especificar la prioridad opcionalmente añadiendo :, seguido del valor. La prioridad por omisión es 0. Las directrices compatibles son other, fifo y rr.

-I, --iosched clase:prioridad
    Esto altera la clase la planificación de E/S y la prioridad del proceso antes de iniciarlo. Opcionalmente, puede definir la prioridad añadiendo : al final, seguido del valor. La prioridad predefinida es 4, a menos que la clase sea idle. En tal caso, la prioridad será siempre 7. Los valores posibles para la clase son idle, best-effort y real-time.

-k, --umask mask
    Define el umask del proceso antes de iniciarlo.

-m, --make-pidfile
    Se usa cuando se quiere comenzar un programa que no crea su propio fichero pid. Esta opción hace que start-stop-daemon cree el fichero referido con --pidfile y coloque el pid dentro de él justo antes de ejecutar el proceso. Tenga en cuenta que no se borrará cuando termine el programa. NOTA: Esta característica no funciona en todos los casos. Más notablemente cuando el programa que se ejecuta hace un fork de su proceso principal. Por esto es útil sólo cuando se combina con la opción --background.

-v, --verbose
    Muestra mensajes informativos detallados.

ESTADOS DE SALIDA

0   La acción requerida se ha llevado a cabo. Si se define --oknodo es posible que nada ocurra. Esto se puede dar si se define --start y se detecta una coincidencia con un proceso en ejecución, o cuando se define --stop y no concuerda ningún proceso.

1   Si se define --oknodo y no se ha hecho nada.

2   Si se define --stop y --retry, pero los procesos aún se estaban ejecutando tras alcanzar el límite de tiempo («schedule»).

3   Cualquier otro fallo.

Al utilizar la orden --status se devuelven los siguientes estados de salida:

0   El programa está en ejecución.

1   El programa no se está ejecutando y el fichero de proceso PID existe.

3   El programa no se está ejecutando.

4   No se puede determinar el estado del programa.

EJEMPLO
Arranca el demonio food, a menos que se esté ejecutando uno (un proceso llamado «food», ejecutándose como usuario «food», y con pid en «food.pid»):

    start-stop-daemon --start --oknodo --user food --name food \
    	--pidfile /var/run/food.pid --startas /usr/sbin/food \
    	--chuid food -- --daemon

Envía SIGTERM a food y espera 5 segundos para su finalización:

    start-stop-daemon --stop --oknodo --user food --name food \
    	--pidfile /var/run/food.pid --retry 5

Un ejemplo de una acción programada personalizada para detener food:

    start-stop-daemon --stop --oknodo --user food --name food \
    	--pidfile /var/run/food.pid --retry=TERM/30/KILL/5

TRADUCTOR
Rudy Godoy <rudy@kernel-panik.org>, Rubén Porras <nahoo@inicia.es>, Bruno Barrera C. <bruno.barrera@igloo.cl>, Carlos Izquierdo <gheesh@ertis.net>, Esteban Manchado y NOK. Debian L10n Spanish <debian-l10n-spanish@lists.debian.org>.
Revisiones por Santiago Vila <sanvila@unex.es>, Javier Fernández-Sanguino, Rubén Porras, Luis Uribe y Omar Campagne.