web-dev-qa-db-fra.com

Runit - Impossible d'ouvrir supervise / ok: le fichier n'existe pas

J'essaie de comprendre pourquoi Runit ne démarrera pas ou ne me donnez pas le statut des applications gérées. Courir sur Ubuntu 12.04.

J'ai créé/service,/etc/sv/myApp (avec un script d'exécution, un fichier de configuration, un dossier de journal et un script d'exécution à l'intérieur de celui-ci). Je crée un lien symbolique de/service/à/etc/sv/myapp

Quand je cours

Sudo sv s /service/*

Je reçois le message d'erreur suivant:

warning: /service/myapp: unable to open supervice/ok: file does not exist

Certaines de mes googles ont révélé qu'ensément redémarrer le service SVScan pourrait résoudre ce problème, mais le tuer et la course à pied SvScanboot n'a pas fait la différence.

Aucune suggestion? Est-ce que je manque une étape ici quelque part?

8
Alexandr Kurilin

Le problème était que, au moins sur Ubuntu 12.04, les liens des services de runkit doivent être placés sous/etc/service, non/service conformément au guide d'arc sur Runit

3
Alexandr Kurilin

Si vous exécutez Ubuntu 18.04 ou plus et que vous obtenez l'erreur suivante

impossible d'ouvrir supervise/ok: le fichier n'existe pas

ou si le fichier runsvdir ne s'affiche pas en sortie "grep", veuillez package runit-systemd en exécutant la commande suivante

Sudo apt install runit-systemd

Pour Ubuntu 18.04 Toutes les réponses spécifiées ci-dessus n'ont pas fonctionné pour moi. J'ai ensuite trouvé cette solution d'une autre askubuntu question

J'espère que ça aide

2
Kumaran

Runit a également du mal à commencer lorsqu'un service est lié à un répertoire monté sur un système de fichiers différent via LVM. Par example,

$ readlink -f /etc/service/my-service
/opt/my-service

$ mount
...
/dev/mapper/lvm--local-opt on /opt type ext4 (...)

$ sv once my-service
warning: my-service: unable to open supervise/ok: file does not exist

Solutions possibles:

  • Démonter le système de fichiers de lvm
    [.____] umount /opt; lvremove /dev/mapper/lvm--local-opt
  • Déplacez le service runit vers un meilleur emplacement
    [.____] update-service --remove /opt/my-service; mv /opt/my-service /etc/sv; update-service --add /etc/sv/my-service
0
Robert Steward