Назад | Перейти на главную страницу

дата и hwclock не синхронизируются - почему

Я нахожусь на GMT + 8, и я установил свои часы на UTC.

[root@sjoam2 ~]# date
Sat Aug  1 16:32:04 SGT 2015
[root@sjoam2 ~]# hwclock --systohc --utc
[root@sjoam2 ~]# hwclock --debug
hwclock from util-linux-ng 2.17.2
Using /dev interface to clock.
Last drift adjustment done at 1438417931 seconds after 1969
Last calibration done at 1438417931 seconds after 1969
Hardware clock is on UTC time
Assuming hardware clock is kept in UTC time.
Waiting for clock tick...
...got clock tick
Time read from Hardware Clock: 2015/08/01 08:32:17
Hw clock time : 2015/08/01 08:32:17 = 1438417937 seconds since 1969
Sat 01 Aug 2015 04:32:17 PM SGT  -0.641290 seconds
[root@sjoam2 ~]# 

Вроде нормально.

Отладка hwclock показывает 08:32 UTC

- Я не уверен в последнем предложении в hwclock --debug (Sat, 01 августа 2015, 16:32:17 PM SGT -0,641290 секунд), где дата отображается в текущем формате часового пояса (который составляет +8 часов) - i считать, что все в порядке

После перезагрузки

[root@sjoam2 ~]# hwclock --debug
hwclock from util-linux-ng 2.17.2
Using /dev interface to clock.
Last drift adjustment done at 1438417931 seconds after 1969
Last calibration done at 1438417931 seconds after 1969
Hardware clock is on UTC time
Assuming hardware clock is kept in UTC time.
Waiting for clock tick...
...got clock tick
Time read from Hardware Clock: 2015/08/01 08:36:45
Hw clock time : 2015/08/01 08:36:45 = 1438418205 seconds since 1969
Sat 01 Aug 2015 04:36:45 PM SGT  -0.782726 seconds
[root@sjoam2 ~]# 

Все еще кажется нормальным из вывода hwclock --debug Hwclock = 08:36

- Я не уверен в последнем предложении в hwclock --debug (Sat, 01 августа 2015, 16:36:45 PM SGT -0,782726 секунд), где дата отображается в текущем формате часового пояса (который составляет +8 часов) - i считать, что все в порядке

Но посмотри на дату сейчас

[root@sjoam2 ~]# date
Sun Aug  2 00:40:31 SGT 2015

Это добавляет еще 8 часов к правильному времени последнего вывода hwclock Sat 01 Aug 2015 16:36:45 PM SGT + еще 8 часов, что добавляет в общей сложности 16 часов к времени UTC.

Как мне это предотвратить? Где мои конфигурации пошли не так?

Я синхронизировал date и hwclock с помощью этой команды:

$ sudo hwclock --systohc

Выше команда пишет date время hwclock время.

НОТА: Если хочешь написать hwclock время date время сделать это:

$ sudo hwclock --hctosys

Для теста:

$ sudo hwclock --show
$ date

НОТА: Ты можешь использовать hwclock -s вместо того hwclock --hctosys и hwclock -w вместо того hwclock --systohc.

systohc = системное время к аппаратному времени.
hctosys = аппаратное время относительно системного времени.

Ваши аппаратные часы должны хранить время UTC, но вы забыли использовать -u возможность сказать hwclock этот. Например,

hwclock -ru

Сброс даты и запуск

hwclock -su

решит проблему.