1

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

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

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

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

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

1 ответ1

1

Установите программу 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 записал во время последней перезагрузки / завершения работы. Это означает, что вы можете иметь несколько правильные часы на случай, если при загрузке возникнут проблемы с сетью.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .