Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 18/10/2010, à 15:21

Nexus-6

Pourquoi ma commande ne passe pas avec le cron?

Voici mon script :

/etc/init.d/mysql status
if [ $? != 0 ]
        then    sleep 41
                /etc/init.d/mysql status

                if [ $? != 0 ]
                        then    /etc/init.d/mysql stop
                                /etc/init.d/heartbeat stop
                fi
fi



exit 0;

Bonjour à tous,

-Lorsque je fais /etc/init.d/heartbeat stop depuis la console mon processus s'arrete.
-Lorsque je lance mon script, que les conditions sont validés mon processus s'arrete.
Quand je lance le script via le cron et bien je me retrouve avec une ligne /bin/sh /etc/init.d/heartbeat stop dans mes processus mais celui concerné ne se coupe pas.

Avez vous une idée du problème? Merci

Hors ligne

#2 Le 18/10/2010, à 15:42

credenhill

Re : Pourquoi ma commande ne passe pas avec le cron?

hello
récupérer d'éventuels messages, ajouter à la fin de la ligne du cron : >> /tmp/log  2>&1

Hors ligne

#3 Le 18/10/2010, à 16:03

Nexus-6

Re : Pourquoi ma commande ne passe pas avec le cron?

Salut,

Dans mon cron j'ai

* * * * * /mysql/bin/mysql.alert >> /log

Et en fait dans mon log quand mon mysql fonctionne je récuperer la ligne de statut OK
Donc la pas de probleme.
Si je coupe mysql, lrosque le cron se lance je me retrouve avec ceci dans le log :

Stopping heartbeat :

Et voila c'est bloqué et dans ma liste processus j'ai ma commande
/bin/sh /etc/init.d/heartbeat stop
mais elle ne ferme pas heartbeat !

Hors ligne

#4 Le 18/10/2010, à 16:10

credenhill

Re : Pourquoi ma commande ne passe pas avec le cron?

ajouter 2>&1 si il y a des erreurs

Hors ligne

#5 Le 18/10/2010, à 22:13

ehmicky

Re : Pourquoi ma commande ne passe pas avec le cron?

Nexus-6 a écrit :
/etc/init.d/mysql status
if [ $? != 0 ]
        then    sleep 41
                /etc/init.d/mysql status

                if [ $? != 0 ];

Cela n'a pas à voir avec la question initiale, mais tu peux raccourcir avec :

if ! /etc/init.d/mysql status ; then
    sleep 41
    if ! /etc/init.d/mysql status ; then

smile


Stego++, bibliothèque libre de stéganographie (avec cryptographie), à venir !
Besoin de votre aide :
Stats sur les compilateurs C++ les plus utilisés
Comment utiliser les archetypes C++ ?

Hors ligne