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
- Comprueba si un proceso ha creado el fichero-pid.
Nota: utilizar solo esta opción de búsqueda puede afectar a
procesos de forma no deseada si el proceso antiguo ha finalizado sin poder
eliminar el fichero-pid.
- -x, --exec ejecutable
- Busca procesos que son instancias de este
ejecutable. El argumento ejecutable debe ser un nombre de
ruta absoluta. Nota: puede que funcione de forma inesperada con scripts de
intérprete de órdenes, ya que el ejecutable apunta al
intérprete de órdenes. Tenga en cuenta que también se
buscan entre los procesos iniciados dentro de una jaula de chroot, y puede
que necesite definir límites adicionales de la búsqueda.
- -n, --name nombre-proceso
- Busca procesos con el nombre nombre-proceso.
Habitualmente, nombre-proceso es igual al nombre de fichero del
proceso, pero puede que el mismo proceso lo modifique. Nota: en la
mayoría de sistemas, esta información se obtiene a partir del
nombre comm de proceso del núcleo, que habitualmente tiene un
límite corto de longitud (suponiendo que más de 15 caracteres no
son portables).
- -u, --user
nombre-usuario|uid
- Busca procesos cuyo propietario es el usuario definido con
nombre-usuario o uid. Nota: tenga en cuenta que utilizar
solo esta opción de búsqueda provoca actuar sobre todos los
procesos que coinciden con el usuario.
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úmero deseñ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[:grupo|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 de la jaula de
chroot.
- -d, --chdir ruta
- Ejecuta un «chdir» a ruta antes de empezar
el proceso. Esto se hace de la jaula de 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.
- -C, --no-close
- No cierra ningún descriptor de fichero al forzar la
ejecución en segundo plano del demonio. Se utiliza para tareas de
depuración y ver la salida del proceso, o redirigir los descriptores
de fichero para registrar la salida del proceso. Solo es relevante si se
utiliza --background.
- -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 /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 /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 /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.