start-stop-daemon [option...] commande
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 d'utiliser --pid ou
--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, pid parent, 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 TERM (ou le signal indiqué par
--signal ou --retry) si --stop est indiqué. Pour
les démons avec des processus enfant qui doivent survivre à un
--stop, il est nécessaire d'indiquer un fichier pid
(« pidfile »).
- -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 si --oknodo est précisé). Si
--retry est indiquée, start-stop-daemon recherche si
le processus ou les processus se sont bien terminés.
- -T, --status
- Check for the existence of a specified process, and returns an exit status
code, according to the LSB Init Script Actions (since version
1.16.1).
- -H, --help
- Affiche un message d'aide, puis quitte.
- -V, --version
- Affiche la version du programme, puis quitte.
- [--pid] pid
- Check for a process with the specified pid (since version 1.17.6).
The pid must be a number greater than 0.
- [--ppid] pid parent
- Check for a process with the specified parent pid ppid (since
version 1.17.7). The ppid must be a number greater than 0.
- -p, --pidfile
pid-file
- Contrôle si un processus a créé le fichier
fichier-pid. Note : l'utilisation de l'option de
correspondance seule peut provoquer des actions sur des processus non
prévus, si l'ancien processus s'est terminé dans savoir
retiré le fichier-pid.
- -x, --exec
exécutable
- Contrôle l'existence de processus qui soient des exemplaires de cet
exécutable. Le paramètre exécutable
doit être un chemin absolu. Note : cela peut ne pas
fonctionner avec des scripts interprétés, car
l'exécutable sera alors l'interpréteur. Des processus en
exécution au sein d'un environnement fermé
d'exécution (« chroot ») seront
également trouvés et il peut donc être
nécessaire d'ajouter d'autres restrictions de correspondance.
- -n, --name
nom-de-processus
- Contrôle l'existence de processus avec nom-de-processus
comme nom. Le nom-de-processus est en général le nom
du fichier du processus, mais peut avoir été modifié
par le processus lui-même. Note : sur la plupart des
systèmes, cette information est récupérée par
le nom de communication du noyau, ce qui induit une limite de longueur
assez courte (la portabilité impose de ne pas supposer plus de 15
caractères).
- -u, --user
identifiant|uid
- Contrôle l'existence de processus dont le propriétaire est
identifiant ou uid. Note : si cette option est
utilisée seule, tous les processus de cet utilisateur seront
concernés par l'action.
- -g, --group
groupe|gid
- Modifie le groupe ou le gid au début du
processus.
- -s, --signal
signal
- L'action --stop définit le signal à envoyer au
processus qui doit être arrêté (par
défaut : TERM).
- -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ée 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-numéro ou de la forme
[-]signal-nom, 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
nom-de-chemin
- Avec l'action --start, lance le processus spécifié
par nom-de-chemin. 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
identifiant|uid[:groupe|gid]
- Change to this username/uid before starting the process. You can also
specify a group by appending a :, then the group or gid in the same
way as you would for the chown(1) command
(user:group). If a user is specified without a group,
the primary GID for that user is used. When using this option you must
realize that the primary and supplemental groups are set as well, even if
the --group option is not specified. The --group option is
only for groups that the user isn't normally a member of (like adding per
process group membership for generic users like 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
chemin
- 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 pour le répertoire racine avant de commencer le
processus.
- -b,
--background
- Typically used with programs that don't detach on their own. This option
will force start-stop-daemon to fork before starting the process,
and force it into the background. Warning: start-stop-daemon cannot
check the exit status if the process fails to execute for any
reason. This is a last resort, and is only meant for programs that either
make no sense forking on their own, or where it's not feasible to add the
code for them to do this themselves.
- -C,
--no-close
- Do not close any file descriptor when forcing the daemon into the
background (since version 1.16.5). Used for debugging purposes to see the
process output, or to redirect file descriptors to log the process output.
Only relevant when using --background.
- -N, --nicelevel
int
- Cela modifie la priorité du processus avant qu'il ne soit
lancé.
- -P, --procsched
politique:priorité
- This alters the process scheduler policy and priority of the process
before starting it (since version 1.15.0). The priority can be optionally
specified by appending a : followed by the value. The default
priority is 0. The currently supported policy values are
other, fifo and rr.
- -I, --iosched
classe:priorité
- This alters the IO scheduler class and priority of the process before
starting it (since version 1.15.0). The priority can be optionally
specified by appending a : followed by the value. The default
priority is 4, unless class is idle, then
priority will always be 7. The currently supported values for
class are idle, best-effort and
real-time.
- -k, --umask
masque
- This sets the umask of the process before starting it (since version
1.13.22).
- -m,
--make-pidfile
- Used when starting a program that does not create its own pid file. This
option will make start-stop-daemon create the file referenced with
--pidfile and place the pid into it just before executing the
process. Note, the file will only be removed when stopping the program if
--remove-pidfile is used. Note: This feature may not work in
all cases. Most notably when the program being executed forks from its
main process. Because of this, it is usually only useful when combined
with the --background option.
- --remove-pidfile
- Used when stopping a program that does not remove its own pid file (since
version 1.17.19). This option will make start-stop-daemon remove
the file referenced with --pidfile after terminating the
process.
- -v, --verbose
- Affiche des messages prolixes en renseignements.
- 0
- L'action demandée a été effectuée. Si
--oknodo était indiqué, il est également
possible que rien ne se soit passé. Cela peut se produire si
--start était indiqué et qu'un processus
correspondant était déjà en train de
s'exécuter ou si --stop était indiqué et
qu'aucun processus ne correspondait.
- 1
- Si --oknodo n'était pas indiqué et que rien ne s'est
passé.
- 2
- Si --stop et --retry étaient indiqués mais que
la fin de la planification a été atteinte et que les
processus étaient toujours en cours d'exécution.
- 3
- Toute autre erreur.
Lorsque la commande --status est utilisée, les codes
d'état suivants sont renvoyés :
- 0
- Le programme est en cours d'exécution.
- 1
- Le programme n'est pas en cours d'exécution et le fichier PID
existe.
- 3
- Le programme n'est pas en cours d'exécution.
- 4
- Impossible de déterminer l'état du programme.
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 /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 /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 /run/food.pid --retry=TERM/30/KILL/5
Ariel VARDI <ariel.vardi@freesbee.fr>, 2002. Philippe
Batailler, 2006. Nicolas François, 2006. Veuillez signaler toute
erreur à <debian-l10n-french@lists.debian.org>.