Page 1 sur 1

[systemd] service ntpd défaillant (résolu)

Publié : dim. 02 sept. 2012, 17:22
par mimile
Bonjour,

L'horloge de mon BIOS est réglée sur le temps UTC.

Je suis sous full systemd et quand j'interroge la liste des services actifs, j'ai ceci :

Code : Tout sélectionner

[okapi@Archibald ~]$ systemctl | grep ntp
ntpd.service              loaded active running       Network Time Service
Au démarrage, c'est l'heure locale qui s'affiche, ntpd faisant donc son boulot.

Après deux ou trois heures, c'est l'heure UTC qui s'affiche.

Comment peut-on expliquer cela ?

A tout hasard, mon ntpd.conf :

Code : Tout sélectionner

[okapi@Archibald ~]$ cat /etc/conf.d/ntpd.conf
# client options for "ntpd -q" - ntpdate equivalent
NTP_CLIENT_OPTION="-g -u ntp"

# arguments passed to ntpd when started
NTPD_ARGS="-g -u ntp"

Re: [systemd] service ntpd défaillant

Publié : dim. 02 sept. 2012, 18:10
par jean_no
salut

Revenons quelque jours en arrière, lors de tes premiers pas avec systemd.
Tu avais à ce moment des déboires avec tes différentes partitions
et tu nous avais aussi décrit ton problème de l'horloge.
Problème que tu n'as pas résolu mais caché en règlant ton horloge dans ton DE.
Reprends calmement la configuration de TOUS les fichiers de conf de systemd,
notamment : /etc/timezone et /etc/adjtime.
Pour info : systemd par défaut gère l'UTC.

Bon courage

Re: [systemd] service ntpd défaillant

Publié : dim. 02 sept. 2012, 18:13
par tuxce
Le fichier /etc/conf.d/ntpd.conf n'est pas pris en compte par le ntpd.service.
Que donnent ces commandes:

Code : Tout sélectionner

date
hwclock -r --localtime
cat /etc/adjtime
ls -l /etc/localtime

Re: [systemd] service ntpd défaillant

Publié : lun. 03 sept. 2012, 08:54
par mimile
Merci d'intervenir.

Avant toute chose, je mets mon PC en route ce matin et il m'affiche l'heure UTC (habituellement, il m'affiche l'heure locale).

Bref, pour répondre à vos demandes :

@ Jean_no :

Code : Tout sélectionner

[okapi@Archibald ~]$ cat /etc/timezone
Europe/Brussels
[okapi@Archibald ~]$ cat /etc/adjtime
cat: /etc/adjtime: Aucun fichier ou dossier de ce type
@ tuxce :

Code : Tout sélectionner

[okapi@Archibald ~]$ date
lun sep  3 10:48:12 CEST 2012
à noter qu'il est 08:48 au moment où j'exécute cette commande

Code : Tout sélectionner

[okapi@Archibald ~]$ hwclock -r --localtime
lun 03 sep 2012 08:50:02 CEST  -0.495001 secondes
ici, c'est la bonne heure

Code : Tout sélectionner

[okapi@Archibald ~]$ cat /etc/adjtime
cat: /etc/adjtime: Aucun fichier ou dossier de ce type
comme vu plus haut dans ma réponse à Jean_no

Code : Tout sélectionner

lrwxrwxrwx 1 root root 35 17 aoû 10:22 /etc/localtime -> /usr/share/zoneinfo/Europe/Brussels
Manifestement, il me manque un fichier (/etc/adjtime) mais je n'en trouve pas trace dans le wiki.

Serait-il responsable de ce comportement erratique de l'heure affichée ?

EDIT : j'ai fait un google-tour et je suis tombé sur le beginers guide qui en parle.

Suite à quoi, j'ai exécuté :

Code : Tout sélectionner

[okapi@Archibald ~]$ sudo hwclock --systohc --utc
[okapi@Archibald ~]$ cat /etc/adjtime
0.000000 1346662799 0.000000
1346662799
UTC
Mais je dois avouer que pour moi, ça ne m'explique pas ces problèmes d'horloge.

Re: [systemd] service ntpd défaillant

Publié : lun. 03 sept. 2012, 09:02
par tuxce
Il ne te manque pas de fichier, les commandes étaient juste pour avoir une idée sur ce que t'as dans ton système.
Par exemple, tu dis que l'heure du bios est en utc, or, hwclock -r --localtime qui retourne l'heure matérielle affiche 8h... ce qui correspond à l'heure locale !

Ne fait pas 50 millions de tests, ajustes ton heure du bios par le biais du bios ou en ajustant celle de la machine puis en exécutant :

Code : Tout sélectionner

hwclock -w --utc --noadjfile
et si t'as encore une différence, vérifies avec les commandes que je t'ai donné.

Si l'heure matérielle se re règle que l'heure locale, tu dois avoir un de tes os qui n'est pas au courant qu'il faut la laisser sur utc :)

Re: [systemd] service ntpd défaillant

Publié : lun. 03 sept. 2012, 09:25
par benjarobin
[HS] tuxce tu n'as reçu mon MP, ni l'email du bug report ? Je suis désolé d'insister mais apparemment tu n'as rien reçu... [/HS]

Re: [systemd] service ntpd défaillant

Publié : lun. 03 sept. 2012, 09:36
par mimile
@ Tuxce

Tu as probablement zappé l'EDIT de ma précédente réponse pendant que tu rédigeais la tienne.

J'ai créé un /etc/adjtime dont j'ai indiqué le contenu.

Cela dit, j'ai vérifié le BIOS : l'heure du BIOS était repassée à l'heure locale alors que je l'avais fixée à l'heure UTC.

Je pense qu'une des autres distros intervient dans la modification de l'heure du BIOS. Quant à savoir laquelle ?

J'ai rebooté Arch et aussi bien au premier écran (genre tenture rayée bleue) qui affiche l'heure dans la barre supérieure puis dans l'écran gnome, l'heure est correcte.

Pour satisfaire à ta demande :

Code : Tout sélectionner

[okapi@Archibald ~]$ date
lun sep  3 09:20:07 CEST 2012
affiche maintenant l'heure locale

Et :

Code : Tout sélectionner

[okapi@Archibald ~]$ hwclock -r --localtime
lun 03 sep 2012 07:20:33 CEST  -0.108915 secondes
affiche l'heure UTC

La commande que tu m'as indiquée dans ton précédent message me renvoie ceci :

Code : Tout sélectionner

[okapi@Archibald ~]$ hwclock -w --noadjfile
hwclock: Avec --noadjfile, vous devez soit indiquer --utc, soit --localtime
J'ai essayé en ajoutant --utc (en simple utilisateur) :

Code : Tout sélectionner

[okapi@Archibald ~]$ hwclock -w --noadjfile --utc
hwclock: Désolé, seul le superutilisateur peut modifier l'horloge matérielle.
Je n'ai pas été plus loin puisqu'apparemment, l'heure est correcte à tous les niveaux.

Mais peut-être auras-tu une autre approche de la question ?

Amicalement,

Re: [systemd] service ntpd défaillant

Publié : lun. 03 sept. 2012, 10:05
par tuxce
mimile a écrit : Tu as probablement zappé l'EDIT de ma précédente réponse pendant que tu rédigeais la tienne.
vu qu'il était après ma réponse, oui :)
mimile a écrit : J'ai créé un /etc/adjtime dont j'ai indiqué le contenu.
Inutile mais vu qu'il y a UTC dedans, ça ne change rien au problème.
mimile a écrit : Je pense qu'une des autres distros intervient dans la modification de l'heure du BIOS. Quant à savoir laquelle ?
Il n'y a pas plus simple, tu vérifies avec les même commandes l'état de tes autres distrib !
Et si tu as windows, la question ne se pose même pas, windows est en localtime par défaut.
mimile a écrit : J'ai rebooté Arch et aussi bien au premier écran (genre tenture rayée bleue) qui affiche l'heure dans la barre supérieure puis dans l'écran gnome, l'heure est correcte.
Heureusement que les 2 horloges qui affichent l'heure système soient à la même heure, non ?
mimile a écrit : J'ai essayé en ajoutant --utc (en simple utilisateur) :

Code : Tout sélectionner

[okapi@Archibald ~]$ hwclock -w --noadjfile --utc
hwclock: Désolé, seul le superutilisateur peut modifier l'horloge matérielle.
Autant pour moi, effectivement, il faut rajouter --utc
La commande est à lancer en root, mais elle est inutile si tu es déjà à l'heure !
mimile a écrit : Mais peut-être auras-tu une autre approche de la question ?
Pourquoi ? Je la trouve assez bonne l'approche donnée :)

@benjarobin, je t'ai répondu hier :)

Re: [systemd] service ntpd défaillant

Publié : lun. 03 sept. 2012, 12:05
par mimile
Finalement, ces perturbations de l'heure système et de l'heure locale ont pour responsable Windows 7.

En effet, mes premiers messages de ce matin étaient rédigés sous Arch et tout allait bien.

Puis, j'ai dû passer sous Seven pendant une ou deux heures ; dans les premiers instants, l'heure affichée était l'heure UTC puis quelques secondes plus tard, l'heure locale est apparue.

De retour sous Arch, le premier écran (rideau bleu) indique deux heures de plus que l'heure locale puis quand le bureau gnome apparaît, il affiche l'heure locale.

J'ai exécuté ta commande (sudo hwclock -w --noadjfile --utc) puis j'ai rebooté et manifestement cette commande a restauré l'heure UTC dans le BIOS.

Faudra que je m'y fasse car il m'est impossible de me passer de Win7 pour le boulot.

Re: [systemd] service ntpd défaillant

Publié : lun. 03 sept. 2012, 12:09
par tuxce
Par contre, tu peux le passer en UTC aussi, voir wiki horloge.

Re: [systemd] service ntpd défaillant

Publié : lun. 03 sept. 2012, 13:00
par mimile
Impecc !

J'ai ajouté la clef dans le registre de Seven puis je l'ai redémarré et il m'affiche l'heure locale sans modifier l'horloge du BIOS.

Je marque ce sujet comme résolu et t'adresse tous mes remerciements

A+