1

У меня странная проблема с системными часами в моей системе Linux, TinyCore, ядро 2.6.38.
Dmesg говорит следующее:

rtc_cmos 00:04: setting system clock to 2012-08-08 19:20:00 UTC (since_epoch-value)

но на самом деле, когда я проверяю date , она всегда начинается с 01.01.2001 01:43:00, а hwclock показывает правильное время.
Теперь, если я запускаю hwclock -s , это исправлено до следующей загрузки.
эта система похожа на "живой CD", который загружается в ОЗУ и размонтирует устройство хранения.
Я предполагаю, что ядро действительно установило время из rtc0, но, возможно, перезапись файла сбрасывает системные часы. это может быть (в комплекте /dev / что-то)?

1 ответ1

0

Фон

В Linux системный часовой пояс определяется символической ссылкой /etc/localtime .

Эта упомянутая ссылка указывает на файл данных часового пояса, который описывает местный часовой пояс. Файлы данных о часовых поясах находятся в /usr/lib/zoneinfo или /usr/share/zoneinfo зависимости от того, какой дистрибутив Linux вы используете.

Hwclock

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

Аппаратные часы: это часы, которые работают независимо от какой-либо управляющей программы, работающей в ЦП, и даже когда машина выключена.

Если вы используете -s он установит системное время из аппаратных часов. Вот почему вы решаете проблему.

Решение

Вы можете выполнить команду в своем терминале для установки символической ссылки, она будет сохраняться даже после перезагрузки:

sudo ln -sf /usr/share/zoneinfo/Portugal /etc/localtime

Для меня это Португалия, адаптируй команду к своему часовому поясу.

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