web-dev-qa-db-fra.com

Comment modifier les paramètres de fuseau horaire à partir de la ligne de commande

J'ai une machine virtuelle configurée sur PST que plusieurs collègues ont dans des fuseaux horaires différents.

Si je voulais changer le fuseau horaire en EST et GMT, que dois-je faire?

214
manyxcxi

Utilisez timedatectl

Sudo timedatectl set-timezone <timeszone>

Exemples:

  • Fuseau horaire comme EST

    Sudo timedatectl set-timezone EST
    
  • Fuseau horaire en UTC

    Sudo timedatectl set-timezone UTC
    
  • Liste de tous les fuseaux horaires valides

    timedatectl list-timezones
    

Cette commande est parfaite pour les scripts d'automatisation, car elle ne nécessite aucune interaction de l'utilisateur en comparaison avec l'autre réponse donnée basée sur dpkg-reconfigure tzdata.

272
Jossef Harush

En tant que root, vous devez exécuter:

dpkg-reconfigure tzdata

Un outil basé sur un menu doit être lancé pour vous permettre de changer le fuseau horaire.

39
maxschlepzig

Ce qui suit fonctionne aussi. Pour GMT:

ln -sf /usr/share/zoneinfo/GMT /etc/localtime

Pour EST:

ln -sf /usr/share/zoneinfo/EST /etc/localtime
31
pm_labs

Le moyen le plus simple, en particulier pour un serveur, est de lister les fuseaux horaires:

timedatectl list-timezones

Et choisissez le vôtre, par exemple:

timedatectl set-timezone Europe/Athens

C'est tout! , :-)

14
Dimitrios

Pour exécuter un programme avec un paramètre de fuseau horaire différent, définissez la variable d'environnement TZ, par exemple. lancez TZ=Pacific/Kiritimati date pour voir l'heure qu'il est sur l'île Christmas ou export TZ=Pacific/Kiritimati pour que le paramètre soit le dernier pour une session Shell.

6
Gilles

Editez le fichier timezone dans le dossier /etc en tant que:

Etc/GMT

Vous pouvez utiliser le format suivant:

Region "/" City 

Exemple de /etc/timezone:

Europe/Athens

ou

Europe/Paris
Europe/London

Vous pouvez expérimenter avec: dpkg-reconfigure tzdata et consulter le fichier de fuseau horaire.

Vous devez redémarrer ou redémarrer un service (pas le service ntp). Je ne sais pas lequel. Si quelqu'un sait s'il vous plaît partagez avec nous. (Testé sur Ubuntu 15.10, le changement est pris en compte instantanément)

6
chasapis.christos
cp -p /usr/share/zoneinfo/US/Pacific /etc/localtime

Je recommande de CONTENU comme mentionné par d'autres. Si un script écrase accidentellement votre fichier /etc/localtime, il écrase alors votre fichier de fuseau horaire Pacifique ... et il est un peu fastidieux de le remplacer.

Copiez simplement le fichier Pacific sur le fichier localtime avec la commande ci-dessus.

4
J Roysdon

J'utilise le script suivant pour demander à l'utilisateur quel fuseau horaire définir, puis confirme qu'il a bien été défini:

#!/bin/sh
Sudo timedatectl set-timezone $(tzselect)
echo
echo timedatectl says:
timedatectl

Je l'appelle tz-set.

2
Tom Hale

Cela a fonctionné pour moi sur GCP Ubuntu 14 via SSH

  1. Sudo su
  2. cp /usr/share/zoneinfo/Asia/Singapore /etc/localtime
  3. Redémarrez le serveur
  4. Terminé
0
Vignesh Chinnaiyan

En tant que root, vous devez exécuter:

ln -fs /usr/share/zoneinfo/Europe/Warsaw /etc/localtime && dpkg-reconfigure --frontend noninteractive tzdata

0
Stefan Sebastian