Commande Linux pour relancer le processus

Existe-t-il une commande Unix qui surveille des processus arbitraires et relance ces processus s’ils sont détruits par le système d’exploitation? Par exemple, j’ai un démon d’arrière-plan qui s’exécute périodiquement, mais parfois il est détruit par le système d’exploitation. Je voudrais soit revivre soit ce processus ou quelque chose de similaire.

Compte tenu de la nature vague de cette question et de ce que le PO a essayé, voici une réponse. Un Ubuntu récent (supposé de la balise), OP utilise un système systemd , et dans ce type de système, on pourrait écrire un script de service systemd qui redémarrerait le démon s’il s’arrêtait;

 ~]# cat /usr/lib/systemd/system/myawesome.service [Unit] Description=My Awesome Service After=systemd-logind.service [Service] Type=notify ExecStart=/path/to/my/awesome/daemon KillMode=process Restart=always [Install] WantedBy=multi-user.target 

Puis démarrez ce service,

  ~]# systemctl start myawesome.service ~]# systemctl enable myawesome.service # To sustain after a reboot 

Pour en savoir plus sur les fichiers d’unité de service systemd, suivez ces liens:

https://www.freedesktop.org/software/systemd/man/systemd.service.html https://www.freedesktop.org/software/systemd/man/systemd.unit.html