start-stop-daemon(8)

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

SINOPSIS
start-stop-daemon [opciones] 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.

-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
    Comprueba si un proceso ha creado el fichero fichero-pid.

-x, --exec ejecutable
    Busca procesos que sean instancias de este ejecutable (según /proc/pid/exe).

-n, --name nombre-proceso
    Comprueba los procesos con el nombre nombre-proceso (según /proc/pid/stat).

-u, --user nombre-usuario|uid
    Comprueba si existen los procesos del usuario especificado por nombre-usuario o uid.

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 nombre-usuario|uid
    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
start-stop-daemon devuelve 0 si la acción requerida tuvo éxito, o si se define --oknodo y si se definió o bien --start, existiendo un proceso cuyo nombre coincide, o --stop y si no existe un proceso que coincida. Devuelve 1 si se especificó --oknodo pero nada ocurrió. Devuelve 2 si se especificaron --stop y --retry, y la acción programada se ejecutó y los procesos aún se estaban ejecutando. Devuelve 3 para los demás errores.

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

AUTORES
Marek Michalkiewicz <marekm@i17linuxb.ists.pwr.wroc.pl> basada en una versión previa de Ian Jackson <ian@chiark.greenend.org.uk>. Página de manual de Klee Dienes <klee@mit.edu>, reformateada parcialmente por Ian Jackson.

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.