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

Unix Discussion :

impacts programmes crontab et changement d'heure


Sujet :

Unix

  1. #1
    Membre à l'essai
    Inscrit en
    Mai 2002
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2002
    Messages : 37
    Points : 17
    Points
    17
    Par défaut impacts programmes crontab et changement d'heure
    Bonjour,

    je ne sais pas trop ou poser ma question.

    on m'a demandé de faire une analyse d'impact du changement d'heure (heure d'été en mars, et heure d'hiver en octobre) sur des traitements qui sont "automatisés" par cron.

    Je sais que le changement d'heure a lieu à 2h du matin.

    passage heure d'été : à 2h, il sera 3h
    les traitements programmés à 2h30 ne seront pas lancé ?

    passage heure d'hiver : à 3h, il sera 2h.
    les traitements programmés à 2h30 seront lancé 2 fois ?

    que faire pour éviter les problèmes à part ne rien programmer entre 2h et 3h

  2. #2
    Modérateur
    Avatar de gangsoleil
    Homme Profil pro
    Manager / Cyber Sécurité
    Inscrit en
    Mai 2004
    Messages
    10 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Manager / Cyber Sécurité

    Informations forums :
    Inscription : Mai 2004
    Messages : 10 150
    Points : 28 119
    Points
    28 119
    Par défaut
    Bonjour,

    Changer l'heure sur une machine est toujours problématique.

    En effet, outre les problèmes de crontab que tu précises, il peut également survenir d'autres problèmes, notamment sur des dates de production de fichiers dont le nom contient un timestamp : si tu changes l'heure, rien ne t'assure de l'unicité du nom des fichiers, ce qui peut être problématique.

    Solution : gérer les machines en temps universel (GMT).
    "La route est longue, mais le chemin est libre" -- https://framasoft.org/
    Les règles du forum

  3. #3
    Membre à l'essai
    Inscrit en
    Mai 2002
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2002
    Messages : 37
    Points : 17
    Points
    17
    Par défaut
    Bonjour,

    et merci de ta réponse.

    malheuresuement, les machines ne sont pas gérées en temps universel.
    (c'est le première question que j'ai posé à l'exploit)

    il ne me reste plus grand chose comme solution à part modifier la crontab pour éviter des départs entre 2 et 3h du matin (heure française)

  4. #4
    Modérateur
    Avatar de jlliagre
    Homme Profil pro
    Ingénieur support avancé & développement
    Inscrit en
    Juin 2007
    Messages
    2 695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur support avancé & développement
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 695
    Points : 7 882
    Points
    7 882
    Par défaut
    Citation Envoyé par petburn Voir le message
    passage heure d'été : à 2h, il sera 3h
    les traitements programmés à 2h30 ne seront pas lancé ?
    non (Solaris)
    passage heure d'hiver : à 3h, il sera 2h.
    les traitements programmés à 2h30 seront lancé 2 fois ?
    oui
    que faire pour éviter les problèmes à part ne rien programmer entre 2h et 3h
    Mettre le serveur en UTC par défaut.
    ɹǝsn *sıɹɐlos*

  5. #5
    Membre à l'essai
    Inscrit en
    Mai 2002
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2002
    Messages : 37
    Points : 17
    Points
    17
    Par défaut
    Le problème, c'est que je doute que "mettre les serveurs en UTC par défaut" soit une solution acceptable (ou du moins qui sera acceptée)

  6. #6
    Modérateur
    Avatar de jlliagre
    Homme Profil pro
    Ingénieur support avancé & développement
    Inscrit en
    Juin 2007
    Messages
    2 695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur support avancé & développement
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 695
    Points : 7 882
    Points
    7 882
    Par défaut
    Je ne vois pas pourquoi. Le fuseau horaire par défaut d'un serveur n'empêche pas les processus utilisateurs d'utiliser un autre fuseau.

    Tu peux aussi mettre uniquement cron en UTC si tu le souhaite.
    ɹǝsn *sıɹɐlos*

  7. #7
    Modérateur
    Avatar de jlliagre
    Homme Profil pro
    Ingénieur support avancé & développement
    Inscrit en
    Juin 2007
    Messages
    2 695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur support avancé & développement
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 695
    Points : 7 882
    Points
    7 882
    Par défaut
    Citation Envoyé par petburn Voir le message
    malheuresuement, les machines ne sont pas gérées en temps universel.
    (c'est le première question que j'ai posé à l'exploit)
    Bien sûr que si. Toutes les machines Unix gèrent leur horloge interne en temps universel. Unix n'est pas Windows. Seule l'heure affichée dépend du fuseau souhaité par l'utilisateur.
    ɹǝsn *sıɹɐlos*

  8. #8
    Membre à l'essai
    Inscrit en
    Mai 2002
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2002
    Messages : 37
    Points : 17
    Points
    17
    Par défaut
    OK, merci beaucoup pour les réponses.

    comment mettre la cron (uniquement) en UTC ?

  9. #9
    Modérateur
    Avatar de jlliagre
    Homme Profil pro
    Ingénieur support avancé & développement
    Inscrit en
    Juin 2007
    Messages
    2 695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur support avancé & développement
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 695
    Points : 7 882
    Points
    7 882
    Par défaut
    Ca dépend de ton O/S que tu n'a pas indiqué.
    ɹǝsn *sıɹɐlos*

  10. #10
    Membre à l'essai
    Inscrit en
    Mai 2002
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2002
    Messages : 37
    Points : 17
    Points
    17
    Par défaut
    Les OS sont Red hat et SUN O/S

  11. #11
    Modérateur
    Avatar de jlliagre
    Homme Profil pro
    Ingénieur support avancé & développement
    Inscrit en
    Juin 2007
    Messages
    2 695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur support avancé & développement
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 695
    Points : 7 882
    Points
    7 882
    Par défaut
    As-tu les numéros de version de Red-Hat et Solaris ?
    ɹǝsn *sıɹɐlos*

  12. #12
    Membre à l'essai
    Inscrit en
    Mai 2002
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2002
    Messages : 37
    Points : 17
    Points
    17
    Par défaut
    Non, je n'ai pas les version de Red Hat et Solaris.

    par contre, on vient de me dire que le solution "mettre la cron en temps TU" n'était pas possible.
    Raison : temps trop court avant le passage à l'heure d'été, tous les tests ne pourrons pas être réaliser. donc niet.

  13. #13
    Modérateur
    Avatar de jlliagre
    Homme Profil pro
    Ingénieur support avancé & développement
    Inscrit en
    Juin 2007
    Messages
    2 695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur support avancé & développement
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 695
    Points : 7 882
    Points
    7 882
    Par défaut
    Tu n'a pas d'autre solution que de lancer tes batches avant 2h00 ou après 3h00 et le problème est réglé.
    ɹǝsn *sıɹɐlos*

  14. #14
    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 petburn Voir le message
    Bonjour,

    je ne sais pas trop ou poser ma question.

    on m'a demandé de faire une analyse d'impact du changement d'heure (heure d'été en mars, et heure d'hiver en octobre) sur des traitements qui sont "automatisés" par cron.

    Je sais que le changement d'heure a lieu à 2h du matin.

    passage heure d'été : à 2h, il sera 3h
    les traitements programmés à 2h30 ne seront pas lancé ?

    passage heure d'hiver : à 3h, il sera 2h.
    les traitements programmés à 2h30 seront lancé 2 fois ?

    que faire pour éviter les problèmes à part ne rien programmer entre 2h et 3h

    en effet il est tjrs dangereux de placer des taches cron entre 2h et 3h (pour la france) dans certaines boites c'est même purement et simplement interdit sur les machines de prod et à peine toléré pour les machines de dev....

    deplus pour les taches de production/exploitation il est recommandé d'utiliser un ordonanceur et non pas le crontab.

    =====================================

    quoi qu'il en soit l'astuce consiste pour les taches déjà programmés
    à écrire un marquer dans /tmp par exemple et interdire donc la double exécution (avec un if en début de tache)

    pour le cas de Mars il vaut mieux tricher et programmer un décalage "exceptionnel" de l'exécution. ou encore mieux annuler la mise à jour de lùheure systeme et la réactiver plus tard, et bien sur resyncroniser avec un serveur NTP.

Discussions similaires

  1. boost::thread, sleep et changement d'heure
    Par lebaste77 dans le forum Boost
    Réponses: 8
    Dernier message: 11/02/2008, 16h59
  2. Mon programme se bloque après quelques heures!
    Par mbouzouita dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 30/11/2007, 21h51
  3. détecter le changement d'heure systeme
    Par firejocker dans le forum Visual C++
    Réponses: 7
    Dernier message: 15/05/2007, 17h01
  4. Programmation crontab avec script shell
    Par burhud dans le forum Linux
    Réponses: 3
    Dernier message: 05/12/2006, 14h46

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