Crontab qui ne se lance pas

Résolu
yann74 -  
zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
j'ai des problème à faire fonctionner ma crontab:
UBUNTU 11.04

l'erreur écrite dans var/log/syslog est la suivante:
ubuntu CRON[11912]: (CRON) error (grandchild #11914 failed with exit status 126)

j'ai essayé de redemarrer cron comme ceci:
etc/init.d/sudo cron restart
ce qui produit l'erreur suivante:
ubuntu cron[11953]: (CRON) DEATH (can't lock /var/run/crond.pid, otherpid may be 993: Resource temporarily unavailable)

j'ai édité la crontab avec la commande crontab -e puis ensuite j'ai essayé avec sudo crontab -e

Le script en lui meme semble bon puisqu'il fonctionne sans souscis depuis la console.

Merci de votre aide.

9 réponses

  1. bob031 Messages postés 8228 Statut Membre 473
     
    Bonjour,

    etc/init.d/sudo cron restart 


    j'aurais tapé plutôt :

    sudo /etc/init.d/cron restart


    un penguin sur la banquise !
    0
  2. yann74
     
    Merci bob031 sudo /etc/init.d/cron restart a bien marché mais les taches ne se lancent toujours pas ... :-/
    0
  3. bob031 Messages postés 8228 Statut Membre 473
     
    ça dit quoi :

    crontab -l
    ou
    sudo crontab -l

    (c'est un L minuscule)
    0
  4. yann74
     
    ça donne

    25 * * * * monuser /home/monuser/sauvegardesites.sh > /home/monuser/Documents/sauvegardesites.log

    sachant que comme dit précédemment le script fonctionne en le lançant depuis une console.

    j'ai également essayé sans mettre "monuser" avant "/home/..."
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. bob031 Messages postés 8228 Statut Membre 473
     
    message supprimé.

    un penguin sur la banquise !
    0
  7. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
     
    Salut,

    crontab s'exécute sans environnement, il faut tout déclarer (ou sourcer) et/ou donner les chemins absolus de toutes les commandes dans ton script. C'est le cas ?
    0
  8. yann74
     
    Extrait de mon script:

    #!/bin/bash
    #repertoire ou se trouve mon script

    cd /home/monuser/Documents

    wget -P /home/monuser/mondossierdesauvegarde/sauvegarde-site'date +%F-%H'/ ftp://mes_parametres_de_connexion
    0
    1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
       
      Re-

      Rajoute les chemins absolu de tous tes exécutables.

      Tu devrais aussi définir une variable "DATE" avant et l'utiliser plutôt que la commande directe :

      #!/bin/bash
      #repertoire ou se trouve mon script
      
      DATE="/bin/date"
      MA_DATE="$(${DATE} +%F-%H)"
      WGET="/usr/bin/wget"
      
      cd /home/monuser/Documents
      
      ${WGET} -P /home/monuser/mondossierdesauvegarde/sauvegarde-site${MA_DATE}/ ftp://mes_parametres_de_connexion
      0
  9. yann74
     
    Merci zipe31 pour ta réponse,
    j'ai modifié mon script avec tes indications, ça ne marche toujours pas mais je pense que c'est effectivement la bonne piste...
    car j'ai testé:

    */5 * * * * echo "test ok" > /home/monuser.txt

    et ça marche très bien, c'est donc bien mon script auquel il doit manquer qqchose...
    0
    1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
       
      Il a bien les droits d'exécution positionnés au moins ?
      0
  10. yann74
     
    Euuh... comment dire... j'ai un peu honte, je débute, il me manque encore quelques reflexes de base!
    Merci à tous pour votre aide,
    merci zipe31 !!!
    0
    1. yann74
       
      Je précise j'ai bien réolu mon problème avec un simple chmod :-/
      0
    2. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
       
      Ne te biles pas, on apprend toujours de nos erreurs, tu n'es pas le premier et tu ne seras pas le dernier ;-))
      0