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

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mai 2002
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2002
    Messages : 37
    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
    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 averti
    Inscrit en
    Mai 2002
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2002
    Messages : 37
    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
    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.

  5. #5
    Membre averti
    Inscrit en
    Mai 2002
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 43

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

    comment mettre la cron (uniquement) en UTC ?

  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
    Par défaut
    Ca dépend de ton O/S que tu n'a pas indiqué.

  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
    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.

  8. #8
    Membre averti
    Inscrit en
    Mai 2002
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2002
    Messages : 37
    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)

  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
    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.

  10. #10
    Expert confirmé 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 : 48
    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
    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