Désactiver les modifications de l'heure d'été (DST) sous Linux

12

Il y a quelques semaines, il est annoncé (par le ministère turc de l'Énergie et des Ressources naturelles) que l'heure d'été sera permanente et que GMT + 3 sera utilisé pour toujours dans le pays.

Actuellement, le fuseau horaire de nos serveurs Linux est défini sur Europe / Istanbul . Mais aucune mise à jour de tzdata n'est encore disponible.

En raison du manque de mise à jour, le fuseau horaire passera de GMT + 3 à GMT + 2 le 30 octobre 2016 automatiquement comme déclaré dans le fichier zoneinfo (/ usr / share / zoneinfo / Europe / Istanbul).

Vous pouvez voir les détails pour 2016 ci-dessous:

# zdump -v /usr/share/zoneinfo/Europe/Istanbul | grep 2016
/usr/share/zoneinfo/Europe/Istanbul  Sun Mar 27 00:59:59 2016 UT = Sun Mar 27 02:59:59 2016 EET isdst=0 gmtoff=7200
/usr/share/zoneinfo/Europe/Istanbul  Sun Mar 27 01:00:00 2016 UT = Sun Mar 27 04:00:00 2016 EEST isdst=1 gmtoff=10800
/usr/share/zoneinfo/Europe/Istanbul  Sun Oct 30 00:59:59 2016 UT = Sun Oct 30 03:59:59 2016 EEST isdst=1 gmtoff=10800
/usr/share/zoneinfo/Europe/Istanbul  Sun Oct 30 01:00:00 2016 UT = Sun Oct 30 03:00:00 2016 EET isdst=0 gmtoff=7200

(En cas d'absence de mise à jour) Pour éviter que cette situation ne devienne une crise, nous décidons d'avoir un plan de sauvegarde qui définit le fuseau horaire de nos serveurs sur GMT + 3 fixe ; mais nous sommes confrontés à un comportement étrange lorsque le GMT + 3 fixe est défini.

Voyons quelles sont l'heure locale et l'heure UTC sur notre serveur avant de modifier le fuseau horaire.

# date
Wed Sep 21 11:13:11 EEST 2016
# date -u
Wed Sep 21 08:13:15 UTC 2016

Nous avons défini le fuseau horaire sur GMT + 3 fixe comme suit:

# rm -f /etc/localtime
# ln -s /usr/share/zoneinfo/Etc/GMT+3 /etc/localtime

Voyons quelles sont l'heure locale et l'heure UTC sur notre serveur après modification. L'heure GMT + 3 est 3 heures plus tôt que UTC où elle devrait être 3 heures plus tard que UTC , comme le montre la sortie ci-dessus.

# date
Wed Sep 21 05:14:24 GMT+3 2016
# date -u
Wed Sep 21 08:14:26 UTC 2016

Cela ne change pas, même si nous réinitialisons l'heure locale ou l'heure UTC.

# date -s "21 Sep 2016 11:16:00"
Wed Sep 21 11:16:00 GMT+3 2016
# date
Wed Sep 21 11:16:02 GMT+3 2016
# date -u
Wed Sep 21 14:16:05 UTC 2016

# date -u -s "21 Sep 2016 11:16:00"
Wed Sep 21 11:16:00 UTC 2016
# date
Wed Sep 21 08:16:01 GMT+3 2016
# date -u
Wed Sep 21 11:16:02 UTC 2016

Pourquoi le décalage semble-t-il être en arrière?

vaha
la source

Réponses:

12

Mise à jour # 1: La mise à jour de la base de données de fuseau horaire est récemment sortie pour plusieurs systèmes d'exploitation sous leurs référentiels officiels. La versiontzdata2016g inclut des paramètres pour la modification mentionnée.

À un moment donné, cette question est le double de la question posée sur superuser.com .

Une réponse limpide est

"Des zones comme Etc / GMT + 6 sont intentionnellement inversées pour une compatibilité descendante avec les normes POSIX"

Mais je crois qu'il ne devrait pas être supprimé pour aider les personnes qui souhaitent désactiver les changements d'heure d'été dans les systèmes Linux.

Pour désactiver les modifications DST , liez votre /etc/localtimefichier à l'un des fichiers zoneinfo placés sous le dossier/usr/share/zoneinfo/Etc/

Exemple de commande:

# ln -s /usr/share/zoneinfo/Etc/GMT+3 /etc/localtime

Pour choisir le fichier zoneinfo le plus approprié , inversez le signe de votre GMT ciblé.

Par exemple, pour définir le fuseau horaire GMT + 3 (qui a 3 heures d'avance sur UTC), il faut utiliser / usr / share / zoneinfo / Etc / GMT-3

vaha
la source
+1 de ma part, mais vraiment, cela dit tout ce que vous devez savoir sur POSIX, et pourquoi tout le monde le déteste.
MadHatter
2

À un certain point, de nouvelles révisions de la table TZ seront publiées et disponibles pour des mises à jour pour toutes les distributions Linux. Hmm .... J'aurais pu vous avertir qu'un tableau de fuseau horaire mis à jour avait été mis à disposition peu de temps après l'annonce de ce problème. Peut-être qu'il pourrait y avoir un nouveau désignateur TZ pour votre situation.

mdpc
la source
1
D'accord avec toi. Si la mise à jour ne pose aucun problème. Nous parlons juste d'un plan de sauvegarde.
vaha