Как я могу заставить Ubuntu использовать внутренние часы BIOS вместо NTP или что-то еще?

Мои часы начинают работать без синхронизации в Ubuntu, чего не происходит в Windows. Проблема в том, что он просто начинает терять время после момента синхронизации с NTP-сервером, это означает, что часы сломаны.

Итак, как я могу заставить систему использовать аппаратные часы вместо этого (я попробовал adjtimex).

КСТАТИ: пожалуйста, не предлагайте батарею CMOS, это не правильный ответ.

7
задан 19 March 2011 в 18:12

3 ответа

Я не уверен, что все работает так, как вы описываете. То есть, нет никакого «программного» процесса синхронизации / приложения, которое использует либо часы BIOS, либо сервер ntp и которое может быть «сломано» в Ubuntu, но работает в Windows. В любом случае информация, которую вы видите на экране, поступает с часов BIOS.

Если NTP-сервер включен, поступающие с него данные используются для настройки BIOS / аппаратных часов, и, когда аппаратные часы считаются «неправильными», демон NTP постепенно настраивает время с небольшими приращениями вместо его установки. сразу. Это делается для того, чтобы избежать внезапных «скачков» в системном времени, которые могут вызвать всевозможные проблемы (то есть событие, которое происходит после какого-то другого события, но в раньше ).

Это прекрасно объясняет поведение, которое вы видите - как только «правильные» данные поступают с NTP-сервера, демон начинает постепенно корректировать системное время.

Я думаю, что ваш часовой пояс / летнее время может быть установлен неправильно. Другая возможность может состоять в том, что Ubuntu ожидает, что часы BIOS будут установлены на время UTC, в то время как Windows устанавливает часы в вашем местном часовом поясе, что приводит к тому, что Ubuntu считает, что ваши системные часы опаздывают / рано на ваше смещение по Гринвичу

может быть полезно: https://help.ubuntu.com/community/UbuntuTime#Multiple%20Boot%20Systems%20Time%20Conflicts

0
ответ дан 19 March 2011 в 18:12

По умолчанию Ubuntu устанавливает только время, когда появляется сетевой интерфейс. Это делается с помощью небольшой части системы "ntp": ntpdate. Если ваша машина остается подключенной и продолжает работать в течение нескольких дней или недель, даже самые лучшие внутренние часы со временем будут не синхронизированы.
Ubuntu также не пытается настроить ваши внутренние часы по умолчанию, и кажется, что ваши часы плохо настроены. Часы реального времени (аппаратные часы) в большинстве систем также не очень хороши в долгосрочной перспективе.

Так что, если вы хотите лучшего времени, я могу порекомендовать два варианта:

  • Установите полный пакет «ntp», чтобы получить сетевой протокол времени, который регулярно просматривает серверы времени в Интернете и держит ваши часы в миллисекундах нужного времени. Смотрите некоторые хорошие инструкции здесь: Установите NTP .... Вы также можете установить его из Центра программного обеспечения Ubuntu. Это легко и, как правило, довольно надежно, если ваша машина обычно подключена к Интернету и у нее нет действительно неприятных брандмауэров, отключающих ntp.

  • Вручную отрегулируйте частоту своих внутренних часов, используя пакет adjtimex. На самом деле, когда вы устанавливаете adjtimex, он запускает adjtimexconfig, который устанавливает значения в / etc / default / adjtimex. Но он делает это быстро, используя аппаратные часы, и, по моему опыту, результаты обычно находятся где-то между плохим и ужасным. Некоторые машины плохо настраиваются, но мне повезло с большинством моих машин, выполнив ручной расчет, необходимый для определения правильных значений FREQ и TICK для добавления в / etc / default / adjtimex. Чтобы пойти по этому пути, начните с установки adjtimex через Приложения / Ubuntu Software Center. Чтобы выяснить ручные настройки для FREQ и TICK, смотрите хороший калькулятор в Настройка с adjtimex как альтернатива запуску ntpd . На этой странице также отмечается, что выбранный вами источник синхронизации может повлиять на точность ваших часов. Hpet (высокоточный таймер событий) кажется более точным, чем tsc (счетчик меток времени).

Советы по работе с другими глюками можно найти на UbuntuTime - Help.ubuntu.com

0
ответ дан 19 March 2011 в 18:12

Перейдите в раздел система / настройки / время и дата, затем разблокируйте настройки, нажав на маленький замок.

Time and Date settings

Измените свою конфигурацию на «ручную» (это значение по умолчанию, если вы не установили NTP), а затем вручную обновите системное время до необходимого уровня.

0
ответ дан 19 March 2011 в 18:12

Другие вопросы по тегам:

Похожие вопросы: