Comment changer la date et l'heure du serveur d'ubuntu via une ligne de commande?

28

La date et l'heure actuelles du serveur Ubuntu sont différentes de celles du fuseau horaire. J'ai essayé d'utiliser:

sudo date "30 Sep 2015 4:43:42"

pour le changer mais cela ne change pas la date et l’heure, il suffit d’afficher sur le terminal la date et l’heure que j’ai modifiées, mais quand j’ai exécuté:

sudo hwclock --show

La date et l'heure sont toujours les mêmes.

Quelle est la bonne façon de changer la date et l'heure du serveur Ubuntu?

    
posée Priska Aprilia 30.09.2015 - 09:51
la source

3 réponses

58

Vous pouvez définir la date système à l'aide de la commande suivante:

sudo date --set="2015-09-30 10:05:59.990"

Ensuite, lorsque vous utilisez date , il devrait s'afficher correctement.

Maintenant, vous devez également définir l'horloge matérielle dans le BIOS du système, afin que le paramètre persiste après un redémarrage (au démarrage, l'heure système est définie sur la valeur de l'horloge matérielle). Faites cela avec hwclock :

sudo hwclock --systohc

Ceci obtient la valeur d'horloges système (sys) et définit l'horloge matérielle (hc). Vérifiez-le avec la commande hwclock . hwclock et date doivent maintenant afficher les mêmes date et heure.

Pour définir votre fuseau horaire , vous pouvez utiliser cette commande:

sudo dpkg-reconfigure tzdata

BTW : si vous utilisez cette machine comme serveur, il est vivement recommandé d'utiliser un client NTP pour synchroniser l'heure sur le réseau . Vous pouvez donc garantir que tous vos serveurs ont exactement la même heure. Cela synchronisera l'heure pendant que la machine fonctionne. Si vous avez des applications qui dépendent du temps synchronisé sur le serveur, je recommande le démon NTP. Plus il est long en arrière-plan, plus le temps est précis.

    
réponse donnée chaos 30.09.2015 - 10:11
la source
3

Je n'aime pas régler l'heure du système manuellement. Donc, pour résoudre ce problème, j'ai dû combiner deux réponses différentes.
Pour corriger l'heure du système, vous devez utiliser ce code:

sudo date -s "$(wget -qSO- --max-redirect=0 google.com 2>&1 | grep Date: | cut -d' ' -f5-8)Z"

comme indiqué dans cette answer
Ensuite, vous synchronisez l'horloge matérielle avec l'horloge système à l'aide de

sudo hwclock --systohc

tel que donné par @chaos dans ce fil de discussion.

    
réponse donnée twitu 18.01.2018 - 07:26
la source
1

tapez simplement

sudo date newdatestring

avec newdatestring au format nnddhhmmyyyy.ss

  • nn: le mois (deux chiffres) (01 à 12)
  • dd: le jour (à deux chiffres) (01 à 31), avec les règles habituelles pour les jours en fonction du mois et de l’année d’application
  • hh: l'heure (deux chiffres) (00 à 23)
  • mm: la minute (deux chiffres) (00 à 59)
  • aaaa: l'année; il peut s'agir de deux chiffres ou de quatre chiffres
  • ss est deux secondes de chiffres (00 à 59). Notez la période "." Avant la ss.

Mais à côté de la commande date, vous préférez peut-être la "solution" NTP (protocole de temps réseau): Serverguide - NTP , beaucoup plus facile à manipuler et plus précis que le réglage manuel de la date. Vous pouvez utiliser un cronjob ou le démon ntp (ntpd) pour mettre à jour votre temps toutes les x heures / minutes ...

J'espère que cela aide!

    
réponse donnée Wolfgang 30.09.2015 - 10:00
la source

Lire d'autres questions sur les étiquettes