Kev42 wrote:@Nerull :
Plus simple, lister les fichiers (dossiers) dans /home :
liste=$(ls /home)
Bon après je pars du principe qu'il n'y a rien d'autre (non "caché") dans home que les dossiers d'utilisateurs, sinon faut filtrer.
Après il ne faut avoir que des utilisateurs qui utilisent rtorrent. Dans l'autre cas j'aurais plutôt tendance à chercher les fichiers .rtorrent.rc et d'en lister les propriétaire, dans le genre :
find /home -type f -name ".rtorrent.rc" -exec ls -la {} \; | awk '{print $3}'
Y'a surement moyen de faire mieux.
@salorium :
Oui je pourrais, mais faudrait que je refasse tous mon script, qui a l'origine n'était pas prévu pour être un daemon, donc j'ai créé une fonction qui permets de boucler la fonction principale, que j'exécute en arrière plan (&).
Autrement je préfère perdre quelques seconde a l'exécution d'un service, que plusieurs heures à chercher le problème. Pour le rw de rtorrent, un chmod ou chown malencontreux arrive de temps à autres, et puis il est pas relancé tous les jours non plus. Par exemple sur ma seedbox, sa fait 3 mois qu'aucun rtorrent n'a planté.
@Hardware
J'ai regarder de très près la doc de systemd (partie init only), j'ai trouver des conditions intéressantes comme conditionFileExist ou autre. Par contre j'ai rien trouvé sur des actions à effectué si une de ces conditions est false, ni sur des conditions custom (comparaison de fichier, ou de variable par exemple) sauf en utilisant execPreStart. Je continue de regarder, mais pour l'instant, je ne vois toujours pas "l’intérêt" pratique pour l'init.