start-stop-daemon(8)

NOM
start-stop-daemon - lance ou arrête des démons système

SYNOPSIS
start-stop-daemon [options] commande

DESCRIPTION
On se sert de start-stop-daemon pour contrôler la création ou l'arrêt de processus système. En utilisant les options correspondantes, start-stop-daemon peut être configuré pour trouver les exemplaires présents d'un processus en fonctionnement.

Veuillez noter qu'à moins de spécifier --pidfile, le programme start-stop-daemon se comporte comme killall(1). start-stop-daemon recherche dans le tableau des processus tout processus qui correspond au nom, uid et/ou gid du processus (si indiqué). Toute correspondance empêchera --start de démarrer le démon. Tous les processus qui correspondent recevront le signal KILL si --stop est indiqué. Pour les démons avec des processus enfant-à-longue-vie et qui doivent survivre à un --stop, vous devez spécifier un fichier pid (« pidfile »).

COMMANDES

-S, --start [--] paramètres
    Vérifier l'existence d'un processus particulier. Quand il existe un tel processus, start-stop-daemon ne fait rien et se termine avec un code d'erreur égal à 1 (0 si --oknodo est précisé). Quand un tel processus n'existe pas, un exemplaire de l'exécutable est lancé, en utilisant le paramètre de --exec ou, celui de --startas si cette option est précisée. Tout argument donné après -- sur la ligne de commande est passé tel quel au programme qui doit être lancé.

-K, --stop
    Vérifier aussi l'existence d'un processus particulier. Quand un tel processus existe start-stop-daemon lui envoie le signal précisé avec --signal et se termine avec un code d'erreur égal à 0. Quand un tel processus n'existe pas start-stop-daemon se termine avec un code d'erreur égal à 1 (0 if --oknodo est précisé). Si --retry est indiquée, start-stop-daemon recherche si le processus ou les processus se sont bien terminés.

-H, --help
    Affiche un message d'aide, puis quitte.

-V, --version
    Affiche la version du programme et le copyright, puis quitte.

OPTIONS DE CORRESPONDANCE

-p, --pidfile pid-file
    Cherche les processus dont les identifiants sont précisés dans pid-file.

-x, --exec exécutable
    Cherche les processus qui sont des exemplaires de cet exécutable (selon /proc/pid/exe).

-n, --name nomdeprocessus
    Cherche les processus dont le nom est nomdeprocessus (selon /proc/pid/stat).

-u, --user nomdutilisateur|uid
    Cherche les processus qui appartiennent à l'utilisateur défini par nomdutilisateur ou uid.

OPTIONS

-g, --group group|gid
    Modifie le group ou le gid au début du processus.

-s, --signal signal
    Avec l'action --stop, on définit le signal à envoyer au processus qui doit être arrêté (par défaut : signal 15).

-R, --retry durée|action-prévue
    Avec l'action --stop, start-stop-daemon doit vérifier que les processus se sont terminés. Il le fait pour tous les processus correspondants qui tournent, jusqu'à ce qu'il n'y en ait plus. Quand le processus ne se termine pas, il prend d'autres mesures déterminées par l'action-prévue. Si durée est indiqué plutôt que action-prévue, l'action-prévue signal/durée/KILL/durée est utilisée, où signal est le signal indiqué par --signal. action-prévue est une liste d'au moins deux items séparés par des barres obliques (/) ; chaque item peut être de la forme -signal-number ou de la forme [-]signal-name, ce qui demande d'envoyer ce signal ; ou bien de la forme durée, ce qui demande d'attendre tant de secondes avant de terminer les processus, ou bien de la forme forever, ce qui demande de répéter constamment le reste de action-prévue, si nécessaire. Quand la fin de l'action-prévue est atteinte et que forever n'a pas été précisé, start-stop-daemon se termine avec un code d'erreur égal à 2. Quand une action-prévue est indiquée, tout signal donné par --signal est ignoré.

-a, --startas chemin/nom
    Avec l'action --start, lance le processus spécifié par chemin/nom. Si rien n'est précisé, c'est par défaut l'argument donné à --exec.

-t, --test
    Affiche les actions qui seraient entreprises et détermine la bonne valeur de retour, mais ne fait rien.

-o, --oknodo
    Retourne un code de sortie égal à 0 au lieu de 1 si rien n'est ou ne sera fait.

-q, --quiet
    N'affiche pas de messages d'information ; affiche seulement les messages d'erreur.

-c, --chuid utilisateur|uid
    Change pour cet utilisateur ou « uid » avant de lancer le processus. On peut aussi préciser un groupe en ajoutant un :, puis le groupe ou un «gid » de la même façon qu'avec la commande « chown » (utilisateur:groupe). Lorsque un utilisateur est indiqué mais pas de groupe alors le groupe primaire de celui-ci est utilisé. Quand on utilise cette option, on doit veiller à ce que les groupes primaires ainsi que les groupes secondaires existent bien, même si l'option --group n'est pas spécifiée. L'option --group » sert seulement pour les groupes dont l'utilisateur n'est pas membre (c'est comme rendre membre d'un groupe-pour-processus des utilisateurs génériques comme nobody).

-r, --chroot root
    Change de répertoire racine pour root avant de lancer le processus. Remarquez que le « pidfile » est aussi écrit après le changement de racine.

-d, --chdir path
    Change de répertoire pour chemin avant de commencer le processus. Cela est fait après le changement de répertoire racine si l'option -r|--chroot est demandée. Si rien n'est demandé, start-stop-daemon changera de répertoire racine avant de commencer le processus.

-b, --background
    Utilisé généralement pour les programmes qui ne « se détachent » pas d'eux-mêmes. Cette option oblige start-stop-daemon à se dupliquer (fork) avant de lancer le processus, et l'oblige à passer en arrière-plan. AVERTISSEMENT : start-stop-daemon ne peut pas vérifier le code de sortie quand, pour une raison ou une autre, le processus échoue. C'est un expédient dont on se servira seulement pour des programmes dont la duplication n'a pas de sens ou bien des programmes dont le code n'est pas adaptable pour leur ajouter cette fonctionnalité.

-N, --nicelevel int
    Cela modifie la priorité du processus avant qu'il ne soit lancé.

-k, --umask mask
    Cela modifie le masque utilisateur du processus avant qu'il ne soit lancé.

-m, --make-pidfile
    Utilisé lors du lancement d'un programme qui ne crée pas son propre fichier identificateur « pid ». Cette option indique à start-stop-daemon de créer le fichier référencé par --pidfile et placer le « pid » dans ce fichier juste avant d'exécuter le processus. Il faut remarquer que ce fichier n'est pas supprimé quand le programme s'arrête. NOTE : il se peut que cette caractéristique ne marche pas dans tous les cas. Notamment quand le programme qui est exécuté se duplique. À cause de cela, cette option n'est habituellement utile que combinée avec l'option --background.

-v, --verbose
    Affiche des messages prolixes en renseignements.

CODE DE SORTIE
start-stop-daemon renvoie 0 si l'action demandée a été effectuée, ou si --oknodo est spécifié et aussi si --start a été spécifié et qu'un processus de comparaison est déjà en cours d'exécution, ou si --stop a été spécifié et qu'il n'y avait pas de processus correspondant. Si --oknodo n'a pas été spécifié et rien n'a été fait, alors 1 est retourné. Si --stop et --retry ont été précisés, mais que l'ordonnanceur a atteint la fin du calendrier en ayant toujours le processus en cours d'exécution, la valeur d'erreur est 2. Pour toutes les autres erreurs, l'état est 3.

EXEMPLE
Démarre le démon food, à moins qu'il soit déjà en cours d'exécution (un processus nommé food, tournant sous le nom d'utilisateur food, avec un pid dans food.pid) :

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

Envoie le signal SIGTERM à food et attend durant 5 secondes son arrêt:

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

Démonstration d'un ordonnanceur personnalisé pour l'arrêt de food :

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

AUTEURS
Marek Michalkiewicz <marekm@i17linuxb.ists.pwr.wroc.pl> à partir d'une version faite par Ian Jackson <ian@chiark.greenend.org.uk>. Page de manuel par Klee Dienes <klee@mit.edu>, partiellement reformattée par Ian Jackson.

TRADUCTION
Ariel VARDI <ariel.vardi@freesbee.fr>, 2002. Philippe Batailler, 2006. Nicolas François, 2006. Veuillez signaler toute erreur à <debian-l10n-french@lists.debian.org>.