J'essaie de faire un crontab
pour commencer nginx
s'il est arrêté.
J'ai cherché sur Google et j'ai trouvé ces deux scripts.
#!/bin/bash
service=replace_me_with_a_valid_service
if (( $(ps -ef | grep -v grep | grep $service | wc -l) > 0 ))
then
echo "$service is running!!!"
else
/etc/init.d/$service start
fi
si je l'exécute manuellement, cela fonctionne bien en faisant source scriptName
après l'avoir ajouté à crontab
même si le service est arrêté, il continue de renvoyer l'écho. nginx is running
et ne démarre pas le service.
Puis j'ai trouvé un autre script dans digital ocean
#!/bin/sh
ps auxw | grep nginx | grep -v grep > /dev/null
if [ $? != 0 ]
then
/etc/init.d/nginx start > /dev/null
fi
encore une fois si je l'exécute manuellement ça marche, mais il demandera le mot de passe de l'utilisateur
==== AUTHENTICATING FOR org.freedesktop.systemd1.manage-units ===
Authentication is required to start 'nginx.service'.
Authenticating as: abc,,, (abc)
après avoir tapé le mot de passe ==== AUTHENTICATION COMPLETE ===
s'affiche et commence nginx
puis j'ajoute le script dans la crontab...j'obtiens cette erreur de permission
Failed to start nginx.service: Interactive authentication required.
Quelqu'un sait-il comment je peux réparer cela ?
Merci d'avance pour tout conseil.