IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

crontab ne s'exécute pas


Sujet :

Shell et commandes GNU

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 45
    Points : 20
    Points
    20
    Par défaut crontab ne s'exécute pas
    Bonsoir,

    Je suis sous Kali linux 1.0.6, j'aimerais lancer un script automatiquement avec crontab mais ça ne marche pas.

    Pour être sur que le problème ne vient pas de mon script je fais juste un ls que je redirige vers un fichier, mais ceci ne se lance jamais. Je n'ai pas de log dans le fichier syslog quant à l'exécution de crontab.

    Voici le contenu du crontab, je précise que je l'édite avec crontab -e et non en modifiant /etc/crontab qui n'est pas très recommandé.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SHELL=/bin/bash
    PATH=/sbin:/bin:/usr/sbin:/usr/bin
    HOME=/
     
    # m h  dom mon dow   command
    45 20 * * * ls  >> /home/unkn0wn/test
    Merci d'avance.

  2. #2
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 684
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 684
    Points : 30 973
    Points
    30 973
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par 9-THUG Voir le message
    Pour être sur que le problème ne vient pas de mon script je fais juste un ls que je redirige vers un fichier, mais ceci ne se lance jamais. Je n'ai pas de log dans le fichier syslog quant à l'exécution de crontab.
    Salut
    Essaye juste "ls" sans redirection et ensuite va voir tes mails. Normalement, quand le processus affiche des trucs, l'affichage est renvoyé dans un mail à l'utilisateur.

    Vérifie aussi la présnce éventuelle de fichiers "/etc/cron.deny" et/ou "/etc/cron.allow". S'il n'y sont pas alors tout le monde est autorisé. Si cron.deny existe mais pas cron.allow alors tout le monde est autorisé sauf ceux qui y sont inscrits. Et si cron.allow existe, alors tout le monde est refusé sauf ceux qui y sont inscrits (et dans ce cas cron.deny n'est pas pris en compte).

    Citation Envoyé par 9-THUG Voir le message
    ... et non en modifiant /etc/crontab qui n'est pas très recommandé.
    Ca peut se faire aussi mais faut prendre soin d'envoyer un signal HUP au processus cron. Ou alors arrêter et redémarrer cron...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 45
    Points : 20
    Points
    20
    Par défaut
    D'abord, je te remercie de ton aide.

    J'ai modifié mon ls pour ne plus rediriger la sortie standard vers un fichier et je reçois bien message contenant le ls de "/" sur le mail du compte. Mais dès que je redirige la sortie du ls, rien ne fonctionne.

    J'ai vérifié que tout les utilisateurs ont le droit de lancer le cron, pas de fichier cron.deny ni de cron.allow.

    J'ai aussi redémarré mais rien n'y fait.

    Tu aurais une piste sachant que le ls sans redirection marche bien ?

  4. #4
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 684
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 684
    Points : 30 973
    Points
    30 973
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par 9-THUG Voir le message
    J'ai modifié mon ls pour ne plus rediriger la sortie standard vers un fichier et je reçois bien message contenant le ls de "/" sur le mail du compte. Mais dès que je redirige la sortie du ls, rien ne fonctionne.

    Tu aurais une piste sachant que le ls sans redirection marche bien ?
    Les droits d'accès sur "/home/unkn0wn/test" ???
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 45
    Points : 20
    Points
    20
    Par défaut
    Le fichier test n'est toujours pas créé, c'est le cron qui doit le faire. Sinon le user a tous les droits sur le dossier

  6. #6
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 684
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 684
    Points : 30 973
    Points
    30 973
    Billets dans le blog
    1
    Par défaut
    Ben là je ne sais pas trop quoi te dire. Le cron fonctionne puisque, quand tu lances ls, tu reçois un mail. Au fait, tu as dit que tu reçois un ls de "/" donc ça signifie que tu as mis un ls / dans le cron (n'est-ce pas ?) alors que ta commande initiale était juste ls. Ce détail a une certaine importance parce que si, quand tu fais ls tu reçois ls / ça signifie que le cron s'exécute dans "/".

    Donc là il faut essayer d'affiner un peu le truc. Par exemple, au lieu de faire ls tu pourrais mettre env histroire de voir quel est l'environnement actif du cron.
    Ensuite, au lieu de mettre une redirection dans "/home/unkn0wn/test", tu pourrais mettre une redirection dans "/tmp/test". Bref faut aussi que tu cherches par toi-même quoi...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 45
    Points : 20
    Points
    20
    Par défaut
    J'ai eu la même réflexion, donc j'ai vérifié que le chemin était bon, j'ai essayé de faire un ls de tmp et plusieurs autres manipulations du genre, mais rien ne se passe. . .

  8. #8
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 684
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 684
    Points : 30 973
    Points
    30 973
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par 9-THUG Voir le message
    j'ai essayé de faire un ls de tmp et plusieurs autres manipulations du genre...
    J'ai pas dit ls /tmp, mais ls redirigé dans /tmp (ex: ls >/tmp/result). Et éventuellement remplacer ls par env voir quel est l'environnement que voit le cron...

    Autre chose: tu sais que quand tu modifies le cron, tu dois laisser au-moins une minute entre l'heure de ta machine et l'heure demandée pour ta tâche car le cron ne se réveille qu'une fois par minute (bon, si tu laisses juste 15 ou 20 sec ça marche généralement aussi mais c'est pas garanti)
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  9. #9
    Expert confirmé
    Homme Profil pro
    Développeur informatique en retraite
    Inscrit en
    Avril 2008
    Messages
    2 101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique en retraite

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 101
    Points : 5 849
    Points
    5 849
    Par défaut
    Citation Envoyé par Sve@r Voir le message
    J'ai pas dit ls /tmp, mais ls redirigé dans /tmp (ex: ls >/tmp/result).
    Je plussoie.

    Et, à tout hasard, est-ce normal que "unkn0wn" soit écrit avec un zéro "0" et non un "o"?

  10. #10
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 684
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 684
    Points : 30 973
    Points
    30 973
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par jack-ft Voir le message
    Et, à tout hasard, est-ce normal que "unkn0wn" soit écrit avec un zéro "0" et non un "o"?
    Ca je l'avais vu mais j'avais admis implicitement que c'était le nom du compte (après tout, c'est autorisé). Toutefois (petite vérif), la redirection dans /tmp/result était aussi faite pour justement affiner ce détail...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  11. #11
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 45
    Points : 20
    Points
    20
    Par défaut
    Oui unkn0wn c'est bien avec zéro, j'ai réussi à faire marcher.

    Merci de votre aide

  12. #12
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 684
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 684
    Points : 30 973
    Points
    30 973
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par 9-THUG Voir le message
    Oui unkn0wn c'est bien avec zéro, j'ai réussi à faire marcher.
    Ouais, et tu veux pas dire ce qui clochait ???
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  13. #13
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 45
    Points : 20
    Points
    20
    Par défaut
    Loin de là, j'ai fait plusieurs manipulations que j'ai pu trouvé sur des sites anglophones comme stackoverflow. Le lendemain, j'ai redémarré ma VM, et comme par hasard ça a marché. Ne m'en voulez pas trop

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. la crontab ne s'exécute pas
    Par alto'o dans le forum DB2
    Réponses: 4
    Dernier message: 09/01/2008, 15h22
  2. job crontab ne s'exécute pas
    Par big1 dans le forum Administration système
    Réponses: 9
    Dernier message: 06/09/2007, 12h12
  3. mon programe asp ne s'exécute pas????????????
    Par ghita269 dans le forum ASP
    Réponses: 1
    Dernier message: 07/11/2005, 11h23
  4. jar Eclipse/bureau -> exécute pas mes requetes !!!
    Par Elea49 dans le forum Eclipse Java
    Réponses: 5
    Dernier message: 04/08/2005, 15h11
  5. Réponses: 3
    Dernier message: 09/10/2002, 11h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo