NTP: без hwclock, регулярно экономьте время для следующей перезагрузки

359
Ely

Я запускаю ntpd на плате ARM, у которой нет аппаратных часов (поэтому нет способа сохранить время, когда оно выключено).

Проблема в том, что после перезагрузки время всегда устанавливается в эпоху Unix, пока ntpd не сможет снова синхронизироваться.

Я хотел бы, чтобы ntpd регулярно сохранял текущее время в файле и повторно применял его при следующей загрузке системы. Это не будет точным, но по крайней мере это не возвращает меня к эпохе Unix при каждой перезагрузке.

Это не обязательно должен быть ntpd, может быть, другое программное обеспечение (или даже сторона ядра?) Может сделать это?

В худшем случае я всегда могу сделать это с помощью сценария init.d, но я думаю, что он уже где-то реализован надлежащим образом.

1
На какой ОС вы работаете? grawity 6 лет назад 0
poky - дистрибутив на основе Linux, скомпилированный с нуля yocto. Ely 6 лет назад 0

1 ответ на вопрос

1
dfc

Установите программу fake-hwclock:

# apt-get install fake-hwclock   fake-hwclock: Save/restore system clock on machines without working RTC hardware  Some machines don't have a working realtime clock (RTC) unit, or no driver for the hardware that does exist. fake-hwclock is a simple set of scripts to save the kernel's current clock periodically (including at shutdown) and restore it at boot so that the system clock keeps at least close to realtime. This will stop some of the problems that may be caused by a system believing it has travelled in time back to 1970, such as needing to perform filesystem checks at every boot.  On top of this, use of NTP is still recommended to deal with the fake clock "drifting" while the hardware is halted or rebooting. 

С установленным fake-hwclock ваша машина не начнет думать, что снова 1970 год. Когда ваша машина загрузится, она установит для своих часов метку времени, которую fake-hwclock записал во время последней перезагрузки / завершения работы. Это означает, что вы можете иметь несколько правильные часы на случай, если при загрузке возникнут проблемы с сетью.

Спасибо ! У меня нет системы на основе apt, поэтому я взял ее из источника: https://git.einval.com/cgi-bin/gitweb.cgi?p=fake-hwclock.git Ely 6 лет назад 0