Précédent   Forum des professionnels en informatique > Systèmes > Linux > Système
Système Vos questions autour de l'administration système
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 04/10/2007, 11h21   #1
Membre Expert
 
Avatar de trattos
 
Inscription : juillet 2003
Messages : 1 005
Détails du profil
Informations personnelles :
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : juillet 2003
Messages : 1 005
Points : 1 022
Points : 1 022
Par défaut Tâche cron qui ne s'exécutent pas

Salut à tous.
Mon entreprise vient de passer en Tout Ubuntu c'est cool mais je n'arrive pas a programmer de tâches cron bizarrement.

En utilisant le planificateur de tâches en mode graphique, j'essaye d'exécuter un script quotidiennement qui sauvegarde et rapatrie une base de données SQL distante. Seulement rien n'est fait. Je suis même étonné d'être bloqué par un truc pareil...

Le script se trouve dans /var/www/backup_sql/backup_mysql.sh et mon utilisateur possède des droits d'écriture dans le dossier puisque exécuter manuellement ça marche.

me renvoie:
Code :
0 18 * * *    /var/www/backup_sql/backup_mysql.sh >> /var/www/backup_sql/backup.log
Je ne comprend pas trop pourquoi rien n'est fait. (Pour mes tests j'ai biensur effectué la sauvegarde toutes les 5min et non seulement à 18h)

Si quelqu'un voit d'ou pourrait venir le probleme.... Un grand merci à lui ou elle.
trattos est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 04/10/2007, 13h49   #2
Membre éclairé
 
Avatar de herzleid
 
Inscription : juin 2002
Messages : 376
Détails du profil
Informations personnelles :
Âge : 33

Informations forums :
Inscription : juin 2002
Messages : 376
Points : 388
Points : 388
Tu as pas une log pour cron ?

Perso lorsqu'il a une erreur il me renvois un mail, avec l'erreur, c'est bien pratique.

Sinon je suppose que le user à qui est rattaché ta table cron est autorisé à exécuter ton script ?
herzleid est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 04/10/2007, 14h20   #3
Membre Expert
 
Avatar de trattos
 
Inscription : juillet 2003
Messages : 1 005
Détails du profil
Informations personnelles :
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : juillet 2003
Messages : 1 005
Points : 1 022
Points : 1 022
Citation:
Envoyé par herzleid Voir le message
Tu as pas une log pour cron ?
Mon utilisateur est autorisé a utiliser le script puisque manuellement c'est le cas et j'ai mit un chmod 777 dessus...
Je n'ai pas regardé le log de cron, faudrait que je vois ce qui se passe dans le syslog.

Edit: Le syslog me renvoi que les tâches cron.daily, hourly... sont bien exécutées par root par Anacron.
J'ai aussi les renseignement comme quoi mon utilisateur a modifier sa table crontab. Bref rien n'anormal là dessus et la date du jour est bien renseignée.
trattos est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 06/10/2007, 12h07   #4
Membre actif
 
Avatar de Blo0d4x3
 
Inscription : octobre 2003
Messages : 456
Détails du profil
Informations forums :
Inscription : octobre 2003
Messages : 456
Points : 152
Points : 152
Envoyer un message via AIM à Blo0d4x3 Envoyer un message via MSN à Blo0d4x3
Et ton utilisateur est authorisé a utiliser la cron? Regarde dans /etc/cron.allow.
Blo0d4x3 est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 11/10/2007, 15h35   #5
Membre Expert
 
Avatar de trattos
 
Inscription : juillet 2003
Messages : 1 005
Détails du profil
Informations personnelles :
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : juillet 2003
Messages : 1 005
Points : 1 022
Points : 1 022
ça ne marche toujours pas. Et je commence à être à court d'idées...
trattos est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 11/10/2007, 15h57   #6
Membre régulier
 
Avatar de dpourdid
 
Inscription : mars 2007
Messages : 72
Détails du profil
Informations personnelles :
Localisation : France, Loiret (Centre)

Informations forums :
Inscription : mars 2007
Messages : 72
Points : 79
Points : 79
salut,

il me semble que cron (ou anacron) n'a pas de log à proprement parlé, par contre dans /var/log/mysqld tu dois pouvoir lire des trucs, ou simplement dans de /var/log/messages

ton script 'backup_mysql.sh' fait une copie de fichier toute bête ou est-ce qu'il envoi des commande sql (pardon si cette question est c.. mais j'y connais rien en SQL).
si c'est une commande shell classique, essaie de la lancer en 'sudo' parce que Ubuntu a un problème avec le root caché...
sinon pour rester 'root', il faut lancer la commande
Code :
1
2
sudo su
et le mot de passe du user
mais tu savais peut-être déjà

@+
D.
__________________
Brisez les fenêtres... passez à Linux
dpourdid est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 11/10/2007, 16h03   #7
Modérateur
 
Avatar de ggnore
 
Inscription : juillet 2004
Messages : 2 246
Détails du profil
Informations personnelles :
Âge : 33

Informations forums :
Inscription : juillet 2004
Messages : 2 246
Points : 1 903
Points : 1 903
suffit amplement, pas besoin de su.

Personnellement, j'évite de faire des redirections dans mes appels dans la crontab. Plus ce fichier est simple, dépourvu de caractères spéciaux mieux il se porte.

Sur toutes mes lignes de /etc/crontab, j'ai l'utilisateur qui lance le script qui est indiqué.
__________________
Toutes les vertus des hommes se perdent dans l’intérêt comme les fleuves se perdent dans la mer.
ggnore est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 15/10/2007, 12h06   #8
Modérateur
 
Avatar de gangsoleil
 
R&D en systemes informatiques bas niveau Unix/Linux
Inscription : mai 2004
Messages : 5 499
Détails du profil
Informations personnelles :
Âge : 31
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : R&D en systemes informatiques bas niveau Unix/Linux

Informations forums :
Inscription : mai 2004
Messages : 5 499
Points : 9 679
Points : 9 679
Bonjour,

Un des problèmes les plus récurrents sur les problèmes d'exécution dans cron est lié à des scripts mal écrits - ou plus exactement mal écris pour la crontab.

En effet, un script lancé par la crontab n'est pas lancé dans un environnement utilisateur. C'est ainsi que le script suivant :
Code :
1
2
3
4
 
#!/bin/sh
 
ls /tmp
peut ne pas fonctionner, alors que lancé à la main il fonctionne très bien ! Cela est dû au fait que les variables d'environnement, et notamment PATH, ne sont pas forcément initialisées (et encore moins initialisées avec les valeurs que l'on souhaiterait).

Il est donc nécessaire d'appeler les commandes avec des chemins absolus :
Code :
1
2
3
4
 
#!/bin/sh
 
/bin/ls /tmp
Conclusion : il est nécessaire de vérifier ton script var/www/backup_sql/backup_mysql.sh

Si tu le souhaites, tu peux le poster ici pour obtenir des corrections.
__________________
Modérateur "C", "Informatique Générale & Hardware" et "Unix"
Les règles du forum
gangsoleil est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 25/03/2011, 14h47   #9
Membre habitué
 
Inscription : mai 2004
Messages : 208
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 208
Points : 104
Points : 104
Envoyer un message via AIM à Romalafrite Envoyer un message via MSN à Romalafrite
les "logs" de crontab :

Code :
grep /usr/sbin/cron /var/log/syslog
Romalafrite est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h52.


 
 
 
 
Partenaires

Hébergement Web