Il y a certainement plus simple mais sur l’idée que j’ai mentionné, tu peux t’inspirer de ceci:
service=$(grep -v ' ' /etc/yunohost/services.yml | cut -d':' -f1)
for alive in $service;do if grep -q Active <(systemctl status $alive);then echo "$alive is not dead";fi;done
A adapter en fonction du retour du service qui ne démarre pas en remplaçant Active (failed? Inactive? je te laisse vérifier ce qu’il y a en retour pour un service qui ne démarre pas, attention à la casse minuscule ou majuscule), là c’est un exemple sur les services qui tournent correctement. il faudra remplacer la commande echo par
yunohost service start $alive
Mais sais-tu pourquoi les services échouent leur démarrage? Le problème est là.