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 :

utilisation de la commande crontab -e


Sujet :

Shell et commandes GNU

  1. #1
    Membre habitué
    Homme Profil pro
    Lille
    Inscrit en
    Février 2011
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lille
    Secteur : Services à domicile

    Informations forums :
    Inscription : Février 2011
    Messages : 154
    Points : 138
    Points
    138
    Par défaut utilisation de la commande crontab -e
    bonjour
    je ne suis pas sur d’être dans la bonne session je m'en excuse d'avance

    Voila j'essaye d'utiliser la commande crontab -e avec l'utilisateur root mais sans succès j'ai mis cela lors de la commande crontab -e pour effectuer la commande toutes les 5 minutes


    */5 * * * * /opt/test/forum/test.sh

    mais rien ne se passe et je ne sais pas trop quoi modifier ?

  2. #2
    Expert éminent sénior Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Points : 12 264
    Points
    12 264
    Par défaut
    déjà dans l'ordre
    -la commande fonctionne avec le compte root hors crontab ?
    -le daemon cron tourne t il
    -tiens tu comptes du fait que crontab n'a pas d'environnement dans ton script ?
    -dans /var cron.log etc... indiquent t ils que la commande a été tentée ?

  3. #3
    Membre habitué
    Homme Profil pro
    Lille
    Inscrit en
    Février 2011
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lille
    Secteur : Services à domicile

    Informations forums :
    Inscription : Février 2011
    Messages : 154
    Points : 138
    Points
    138
    Par défaut
    a commande fonctionne avec le compte root hors crontab ?
    -le daemon cron tourne t il
    -tiens tu comptes du fait que crontab n'a pas d'environnement dans ton script ?
    -dans /var cron.log etc... indiquent t ils que la commande a été tentée ?

    oui la commande fonctionne en root hors crontab
    je suppose que le démon tourne:
    root 26029 0.0 0.1 3324 1004 ? Ss 10:56 0:00 /usr/sbin/cron

    dans les log j'ai :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Apr 11 11:15:02 ABFNAGIOSDEV /USR/SBIN/CRON[28760]: (root) CMD (/opt/test/forum/test.sh )
    Apr 11 11:17:02 ABFNAGIOSDEV /USR/SBIN/CRON[29263]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
    Apr 11 11:20:01 ABFNAGIOSDEV /USR/SBIN/CRON[30065]: (root) CMD (/opt/test/forum/test.sh )
    Apr 11 11:25:01 ABFNAGIOSDEV /USR/SBIN/CRON[31428]: (root) CMD ([ -x /usr/lib/sysstat/sa1 ] && { [ -r "$DEFAULT" ] && . "$DEFAULT" ; [ "$ENABLED" = "true" ] && exec /usr/lib/sysstat/sa1 $SA1_OPTIONS 1 1 ; })
    Apr 11 11:25:01 ABFNAGIOSDEV /USR/SBIN/CRON[31430]: (root) CMD (/opt/test/forum/test.sh )
    Apr 11 11:30:01 ABFNAGIOSDEV /USR/SBIN/CRON[32634]: (root) CMD (/opt/test/forum/test.sh )
    et je ne comprends pas ta troisième demande dsl ?

  4. #4
    Expert éminent sénior Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Points : 12 264
    Points
    12 264
    Par défaut
    Les variables d'environnements ne sont pas chargées dans crontab. C'est pas un shell. donc si ton script s'appuie sur ces dernières il est normal que ça ne fonctionne pas.

    ton crontab fonctionne et déclenche bien le script, d'après ce que tu as vu dans le log.

    Donc ton problème c'est bien ton script, mais pas cron ni ton entrée dans crontab qui fonctionne parfaitement.

    comme on le voit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Apr 11 11:15:02 ABFNAGIOSDEV /USR/SBIN/CRON[28760]: (root) CMD (/opt/test/forum/test.sh )
    Apr 11 11:20:01 ABFNAGIOSDEV /USR/SBIN/CRON[30065]: (root) CMD (/opt/test/forum/test.sh )
    Apr 11 11:25:01 ABFNAGIOSDEV /USR/SBIN/CRON[31430]: (root) CMD (/opt/test/forum/test.sh )
    Apr 11 11:30:01 ABFNAGIOSDEV /USR/SBIN/CRON[32634]: (root) CMD (/opt/test/forum/test.sh )

  5. #5
    Membre habitué
    Homme Profil pro
    Lille
    Inscrit en
    Février 2011
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lille
    Secteur : Services à domicile

    Informations forums :
    Inscription : Février 2011
    Messages : 154
    Points : 138
    Points
    138
    Par défaut
    lorsque je lance ma commande
    /opt/test/forum/test.sh dans ma console j'ai bien mes fichier de créé donc je ne comprends pas ce qui ne va pas ?

  6. #6
    Membre habitué
    Homme Profil pro
    Lille
    Inscrit en
    Février 2011
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lille
    Secteur : Services à domicile

    Informations forums :
    Inscription : Février 2011
    Messages : 154
    Points : 138
    Points
    138
    Par défaut
    Citation Envoyé par fbb53 Voir le message
    lorsque je lance ma commande
    /opt/test/forum/test.sh dans ma console j'ai bien mes fichier de créé donc je ne comprends pas ce qui ne va pas ?
    En relisant ton message je pense avoir compris le problème mais je ne vois pas de solution ?

  7. #7
    Invité
    Invité(e)
    Par défaut
    Salut,

    pourrais-tu nous montrer le contenu de ton script stp?

  8. #8
    Expert éminent sénior Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Points : 12 264
    Points
    12 264
    Par défaut
    Citation Envoyé par fbb53 Voir le message
    lorsque je lance ma commande
    /opt/test/forum/test.sh dans ma console j'ai bien mes fichier de créé donc je ne comprends pas ce qui ne va pas ?
    je répète CRON n'est pas un shell, il n'a pas les variables d'environnement, donc si ton script appelle des fonctions issus du .profile, ou des alias, ou des commandes directes etc....etc..... il ne les trouve pas et plante, ou pire encore si tu l'as mal conçu il traites des choses hors de tout contrôles...

  9. #9
    Membre habitué
    Homme Profil pro
    Lille
    Inscrit en
    Février 2011
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lille
    Secteur : Services à domicile

    Informations forums :
    Inscription : Février 2011
    Messages : 154
    Points : 138
    Points
    138
    Par défaut
    Voici mon script, il y a t'il une autre solution que cron pour lancer un script?


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
     
     
    while read ligne; do
     read -a tableau <<< $(echo $ligne)
     #printf '%s\n' "HOST:${tableau[0]} ADD:${tableau[1]} DISK:${tableau[2]} INFO:${tableau[3]} OS:${tableau[4]}"
     touch ${tableau[0]}_${tableau[2]}
     chmod 777 ${tableau[0]}_${tableau[2]}
     
            if [ ${tableau[4]} = windows ]
                    then
                            oid_disk=`snmpwalk -v 2c -c public ${tableau[1]} .1.3.6.1.4.1.9600.1.1.1.1.1 | grep ${tableau[2]} | awk -F "." '{print $8"."$9"."substr($10,0,index($10,"="))}'`
     
     
                            io_rbs=`snmpget -v 2c -c public ${tableau[1]} .1.3.6.1.4.1.9600.1.1.1.1.15.$oid_disk | awk -F ":" '{print $4}'`
                            io_wbs=`snmpget -v 2c -c public ${tableau[1]} .1.3.6.1.4.1.9600.1.1.1.1.18.$oid_disk | awk -F ":" '{print $4}'`
     
                            printf "echo \"$io_rbs|'DiskWriteBPS'=$io_rbs 'DiskReadBPS'=$io_wbs\"" >${tableau[0]}_${tableau[2]}
                            #printf "echo" >${tableau[0]}_${tableau[2]}
     
                             #echo " \"$io_rbs|'DiskWriteBPS'=$io_rbs 'DiskReadBPS'=$io_wbs \"" >>${tableau[0]}_${tableau[2]}
     
     
                    else if [ ${tableau[4]} = unix ]
                            then
                                    oid_disk=`snmpwalk -v 2c -c public ${tableau[1]} .1.3.6.1.4.1.2021.13.15.1.1.2 | grep ${tableau[2]} | awk -F "." '{print substr($2,0,index($2,"="))}'`
     
     
                                     io_rbs=`snmpget -v 2c -c public ${tableau[1]} .1.3.6.1.4.1.2021.13.15.1.1.3.$oid_disk | awk -F ":" '{print $4}'`
                                     io_wbs=`snmpget -v 2c -c public ${tableau[1]} .1.3.6.1.4.1.2021.13.15.1.1.4.$oid_disk | awk -F ":" '{print $4}'`
     
     
                                    sleep 5
     
                                    io_rbs2=`snmpget -v 2c -c public ${tableau[1]} .1.3.6.1.4.1.2021.13.15.1.1.3.$oid_disk | awk -F ":" '{print $4}'`
                                    io_wbs2=`snmpget -v 2c -c public ${tableau[1]} .1.3.6.1.4.1.2021.13.15.1.1.4.$oid_disk | awk -F ":" '{print $4}'`
     
     
     
                                    let "io_wbstemp = io_wbs2 - io_wbs"
                                    let "io_rbstemp = io_rbs2 - io_rbs"
     
                                    let "io_wbsfinal = io_wbstemp / 5"
                                    let "io_rbsfinal = io_rbstemp / 5"
     
                                    printf   " echo \"$io_wbsfinal|'DiskWriteBPS'=$io_wbsfinal 'DiskReadBPS'=$io_rbsfinal\"" >${tableau[0]}_${tableau[2]}
     
     
     
                    fi
            fi
     
     
     done < conf.txt

  10. #10
    Membre habitué
    Homme Profil pro
    Lille
    Inscrit en
    Février 2011
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lille
    Secteur : Services à domicile

    Informations forums :
    Inscription : Février 2011
    Messages : 154
    Points : 138
    Points
    138
    Par défaut
    Avez vous une autre idée pour remplacer cron et lancer mon script toutes les 5 minutes?

  11. #11
    Invité
    Invité(e)
    Par défaut
    Salut,

    est-ce le script complet? Si c'est le cas, il serait bien de spécifier le shell que le script va utiliser tout au debut.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    #!/chemin/vers/shell
    exemple:
    #!/usr/bin/bash
    Tu peux rediiriger l'output et l'erreur standard dans un fichier pour essayer de voir ce qu'il se passe.

    Pour cela ajoute ce qui est en rouge dans la crontab.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    */5 * * * * /opt/test/forum/test.sh > /tmp/test.log 2>&1

  12. #12
    Membre habitué
    Homme Profil pro
    Lille
    Inscrit en
    Février 2011
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lille
    Secteur : Services à domicile

    Informations forums :
    Inscription : Février 2011
    Messages : 154
    Points : 138
    Points
    138
    Par défaut
    je fais cela de suite

  13. #13
    Membre habitué
    Homme Profil pro
    Lille
    Inscrit en
    Février 2011
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lille
    Secteur : Services à domicile

    Informations forums :
    Inscription : Février 2011
    Messages : 154
    Points : 138
    Points
    138
    Par défaut
    cela n'a rien changé, dans mon fichiers de log j'ai:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Apr 11 15:10:01 ABFNAGIOSDEV /USR/SBIN/CRON[16933]: (root) CMD (/opt/test/forum/test.sh > /tmp/test.log 2>&1)
    Apr 11 15:15:01 ABFNAGIOSDEV /USR/SBIN/CRON[17627]: (root) CMD ([ -x /usr/lib/sysstat/sa1 ] && { [ -r "$DEFAULT" ] && . "$DEFAULT" ; [ "$ENABLED" = "true" ] && exec /usr/lib/sysstat/sa1 $SA1_OPTIONS 1 1 ;$
    Apr 11 15:15:01 ABFNAGIOSDEV /USR/SBIN/CRON[17629]: (root) CMD (/opt/test/forum/test.sh > /tmp/test.log 2>&1)
    Apr 11 15:17:01 ABFNAGIOSDEV /USR/SBIN/CRON[17915]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
    Mais cela ne fonctionne pas j'ai toujours les même valeurs dans mon fichier

  14. #14
    Invité
    Invité(e)
    Par défaut
    mmmh

    et tu as quoi dans /tmp/test.log ?

  15. #15
    Membre habitué
    Homme Profil pro
    Lille
    Inscrit en
    Février 2011
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lille
    Secteur : Services à domicile

    Informations forums :
    Inscription : Février 2011
    Messages : 154
    Points : 138
    Points
    138
    Par défaut
    /bin/sh: /opt/test/forum/test.sh: not found

    erreur de ma part pour simplifier la compréhension j'avais changer mon test.sh en check.sh ... je modifie et je te redis ça

    cela veut dire quoi :
    bash: /opt/test/forum/check.sh: /usr/bin/bash: bad interpreter: No such file or directory ??

    J'ai ce message depuis que j'ai rajouté #!/usr/bin/bash

  16. #16
    Invité
    Invité(e)
    Par défaut
    cela veut dire qu'il ne trouve pas bash à dans /usr/bin. Pour info je t'avais donné cela à titre d'exemple. Sur ta machine il faudra trouver le chemin vers bash.

    Dernière modification par Invité ; 11/04/2011 à 15h50.

  17. #17
    Membre habitué
    Homme Profil pro
    Lille
    Inscrit en
    Février 2011
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lille
    Secteur : Services à domicile

    Informations forums :
    Inscription : Février 2011
    Messages : 154
    Points : 138
    Points
    138
    Par défaut
    oui c'est de ma faute j'ai recopié cela bêtement
    J'ai fais tout les changement d'ici 10 minutes je serai fixé

  18. #18
    Membre habitué
    Homme Profil pro
    Lille
    Inscrit en
    Février 2011
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lille
    Secteur : Services à domicile

    Informations forums :
    Inscription : Février 2011
    Messages : 154
    Points : 138
    Points
    138
    Par défaut
    alors
    dans cron.log j'ai :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Apr 11 15:40:01 ABFNAGIOSDEV /USR/SBIN/CRON[21543]: (root) CMD (/opt/test/forum/check.sh > /tmp/test.log 2>&1)
    et dans /tmp/test.log
    je n'ai rien de nouveau

    Cela ne marche pas

  19. #19
    Invité
    Invité(e)
    Par défaut
    Peux-tu systématiquement donner le contenu du log test.log. Où est ton bash? peux-tu fournir le résultat de la commande? Peux-tu refournir l'entièreté de ton script?
    Dernière modification par al1_24 ; 12/04/2011 à 13h21. Motif: Grammaire, orthographe

  20. #20
    Membre habitué
    Homme Profil pro
    Lille
    Inscrit en
    Février 2011
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lille
    Secteur : Services à domicile

    Informations forums :
    Inscription : Février 2011
    Messages : 154
    Points : 138
    Points
    138
    Par défaut
    j'ai donné le contenu de test.log et cron.log dans mon message au dessus à moins que ce n'est pas cela que tu veux?

    cron.log
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Apr 11 15:40:01 ABFNAGIOSDEV /USR/SBIN/CRON[21543]: (root) CMD (/opt/test/forum/check.sh > /tmp/test.log 2>&1)
    Apr 11 15:45:01 ABFNAGIOSDEV /USR/SBIN/CRON[22280]: (root) CMD ([ -x /usr/lib/sysstat/sa1 ] && { [ -r "$DEFAULT" ] && . "$DEFAULT" ; [ "$ENABLED" = "true" ] && exec /usr/lib/sysstat/sa1 $SA1_OPTIONS 1 1 ;$
    Apr 11 15:45:01 ABFNAGIOSDEV /USR/SBIN/CRON[22281]: (root) CMD (/opt/test/forum/check.sh > /tmp/test.log 2>&1)
    Apr 11 15:50:01 ABFNAGIOSDEV /USR/SBIN/CRON[23030]: (root) CMD (/opt/test/forum/check.sh > /tmp/test.log 2>&1)
    Apr 11 15:55:01 ABFNAGIOSDEV /USR/SBIN/CRON[23756]: (root) CMD (/opt/test/forum/check.sh > /tmp/test.log 2>&1)
    Apr 11 15:55:01 ABFNAGIOSDEV /USR/SBIN/CRON[23757]: (root) CMD ([ -x /usr/lib/sysstat/sa1 ] && { [ -r "$DEFAULT" ] && . "$DEFAULT" ; [ "$ENABLED" = "true" ] && exec /usr/lib/sysstat/sa1 $SA1_OPTIONS 1 1 ;$
    Apr 11 16:00:01 ABFNAGIOSDEV /USR/SBIN/CRON[24484]: (www-data) CMD (sh /var/www/glpi/plugins/massocsimport/scripts/ocsng_fullsync.sh --thread_nbr=1 --server_id=localhost)
    Apr 11 16:00:01 ABFNAGIOSDEV /USR/SBIN/CRON[24488]: (root) CMD (/opt/test/forum/check.sh > /tmp/test.log 2>&1)
    la commande find / -name bash me retourne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    /bin/bash
    /etc/apparmor.d/abstractions/bash
    /usr/share/bash
    /usr/share/menu/bash
    /usr/share/doc/bash
    Mon scritpt est entier à par le
    #!/bin/bash que j'avais oublié

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [VB]Probleme d'utilisation de la commande MSCOM
    Par Tyrael62 dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 26/01/2006, 14h00
  2. Retour d'erreur avec l'utilisation de la commande For en VBS
    Par genialk2000 dans le forum VBScript
    Réponses: 3
    Dernier message: 30/03/2005, 18h45
  3. Problème avec l'utilisation de la commande system awk
    Par vbcasimir dans le forum Linux
    Réponses: 3
    Dernier message: 05/10/2004, 16h18
  4. Récupérer un fichier suite à l'utilisation de la commande rm
    Par Kimael dans le forum Applications et environnements graphiques
    Réponses: 4
    Dernier message: 02/10/2004, 18h34
  5. [TP][Graphique]Utilisation de la commande Setviewpost
    Par repairman dans le forum Turbo Pascal
    Réponses: 2
    Dernier message: 09/07/2003, 13h26

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