Le jeu. 9 nov. 2023 à 20:55, Edgar Bonet <guilde@???> a écrit :
>
> Patrice Karatchentzeff a écrit :
> > Un truc de bourrin si jamais c'est bogué... Tu lances un second
> > service qui monitore l'absence de connexion et qui kille les deux
> > unités actives...
>
> Merci pour la suggestion. Je risque, en effet, de faire quelque chose de
> ce style si je ne trouve pas de meilleure solution : une boucle infinie
> qui attend l'apparition du port, lance le service, attend sa
> disparition, arrête le service, puis recommence.
>
> Je trouve cependant ce genre d'approche, avec attente active, pas très
> élégante. Surtout quand on a un système d'init qui se prétend être aussi
> un « service manager ». De plus, systemd.path(5) dit
>
> Internally, path units use the inotify(7) API to monitor
> file systems.
>
> ce qui semble bien plus élégant qu'une attente active...
Techniquement, c'est identique... C'est une boucle qui renifle la
sortie d'inotify pour lancer et arrêter le service.
D'ailleurs, quitte à faire le script que tu proposes, tu pourrais
directement attaquer le problème avec inotify.
Mais bon, faut avoir un peu de temps... Ma solution ultra-bourrine
avait l'avantage de plier le problème en un rien de temps, en
attendant une solution propre à la systemd.
PK
--
|\ _,,,---,,_ Patrice KARATCHENTZEFF
ZZZzz /,`.-'`' -. ;-;;,_ mailto:patrice.karatchentzeff@gmail.com
|,4- ) )-,_. ,\ ( `'-'
'---''(_/--' `-'\_)