2011-06-26 13:23:39 +0000 2011-06-26 13:23:39 +0000
71
71

Comment régler l'heure actuelle sous Linux ?

Pourquoi la sortie des commandes suivantes est-elle différente ?

root@vmi2115:/var# hwclock
Sun 26 Jun 2011 01:21:38 PM CEST -0.273230 seconds
root@vmi2495:/var# date
Sun Jun 26 15:21:39 CEST 2011
root@vmi2115:/var#

Et puis-je changer l'heure actuelle sous Linux ?

Réponses (10)

92
92
92
2011-06-26 15:28:54 +0000

En général, vous voudrez que l'heure soit réglée automatiquement, et dans ce cas, vous voudrez configurer ntpd pour qu'il règle automatiquement l'heure pour vous.

Les spécificités diffèrent légèrement d'une distribution à l'autre, mais si vous utilisez Ubuntu, par exemple, il existe un guide sur la configuration de NTP sur Ubuntu . Sinon, il vous suffit d'utiliser Google ntpd <distribution-name>, et vous le trouverez probablement.

Si vous souhaitez le paramétrer manuellement, vous pouvez cependant utiliser date --set="<date string>". Voici quelques exemples :

date --set="23 June 1988 10:00:00"
date --set="10:00:00"
37
37
37
2011-06-26 14:13:09 +0000

Set the Hardware Clock to the current System Time.

# hwclock --systohc

Set the System Time from the Hardware Clock.

# hwclock --hctosys
23
23
23
2013-04-01 13:13:25 +0000

juste ntpdate ntp.ubuntu.com et tout ira bien.

Il y a plus d'informations à ce sujet sur Ubuntu Official Documentation

13
13
13
2013-08-23 16:51:36 +0000

Un autre problème courant et très ennuyeux est que, lorsque le mauvais fuseau horaire est sélectionné…

Vérifiez le fuseau horaire avec la sortie de la date :

$ date

Fre Aug 23 18:47:04 UTC 2013

Pour corriger le fuseau horaire, tapez :

$ sudo tzselect

et sélectionnez la région correcte avec les chiffres correspondants.

Une deuxième tâche consiste à régler l'heure correcte :

$ sudo date –set=“18:37:00”

Ou simplement prendre l'heure de l'horloge HW :

$ sudo hwclock –hctosys

3
3
3
2015-04-03 10:00:44 +0000

Dans CentOS les fuseaux horaires sont situés dans /usr/share/zoneinfo/, pour changer la date du système en un fuseau horaire spécifique vous pouvez :

D'abord, faites une sauvegarde du fichier d'heure locale existant.

sudo mv /etc/localtime /etc/localtime.bak

Ensuite, créez le lien :

sudo ln -s /usr/share/zoneinfo/Europe/Lisbon /etc/localtime

Vérifiez la nouvelle date du système en tapant date.

Pour ajuster le système Linux date manuellement vous pouvez taper :

date -s "11 MAR 2006 11:11:11"

OR

date --set="11 MAR 2015 11:11:11"

OR

date +%Y%m%d -s "20150311"

Pour régler la horloge matérielle sur l'heure système actuelle :

hwclock --systohc

OR

hwclock -w
2
2
2
2015-06-17 09:24:07 +0000

Essayez ceci :

date +%T -s "12:21:00"

ou

date +%T%p -s "12:22:20AM"
date +%T%p -s "12:23:30PM"
1
1
1
2013-07-31 07:32:37 +0000

“hwclock” est la date du matériel (machine), et “date” est la date du logiciel (système d'exploitation).

For change pc hardware date :

hwclock --set --date="2013-7-31 09:30"

For change software date :

date --set "2013-7-31 09:30"
0
0
0
2011-11-26 11:33:01 +0000

date renvoie le temps donné comme étant le temps à partir du moment où le cpu a démarré plus le temps donné par l'horloge interne du matériel, hwclock donne le temps dont dispose l'horloge interne.

Le temps basé sur le cpu a tendance à dériver plus la machine est longue, c'est la raison de l'existence de la commande hwclock --hctosys. C'est également l'une des raisons de l'utilisation du Network Protocol Time, qui est utilisé pour coordonner le temps au niveau international sur l'internet.

0
0
0
2016-09-26 12:37:17 +0000

utilisez ceci si vous n'avez pas de client NTP

date -s $(wget -q -O - http://www.timeapi.org/eest/now | cut -d '+' -f 1 | tr -d : | tr -d - | tr -d T | cut -c 1-12)

eest dans l'URL est votre fuseau horaire local

Vous pouvez utiliser utc… et etc

0
0
0
2019-02-20 14:18:53 +0000

puis-je changer l'heure actuelle sous Linux ?

Pour moi, il fallait d'abord exécuter cette commande :

sudo systemctl stop systemd-timesyncd

Sinon, systemd réinitialiserait l'heure immédiatement. Après avoir arrêté le service systemd, exécuter date fonctionne comme prévu :

$ sudo date -s 'january 1 1971'
Fri Jan 1 00:00:00 CET 1971
$ date
Fri Jan 1 00:00:00 CET 1971

Pendant que le service fonctionnait, la commande date -s semblait fonctionner, mais exécuter date un instant plus tard me redonnerait l'heure de systemd.