Синхронизация времени RTC, не работающая (CONFIG_RTC_SYSTOHC)

Я просто успешно установил скайп на своем Linux Mint на 64 бита Debian (который является Debian во всех отношениях, не на основе Ubuntu) путем попытки в http://www.skype.com/en/download-skype/skype-for-linux/downloading/?type=debian32 загружать "мультидугу" debian пакет (сохраненный как skype-debian_4.2.0.11-1_i386.deb) и установка его. Точные шаги были почти тем же как Вашим:

sudo dpkg --add-architecture i386 && apt-get update
sudo dpkg -i skype-debian_4.2.0.11-1_i386.deb 

После которого у меня была работа skype. Это - "рекомендуемый" метод согласно https://support.skype.com/en/faq/FA12120/getting-started-with-skype-for-linux#2.2

3
24.02.2015, 19:34
3 ответа

Поскольку вы уже установили обновление времени ntp через ntpupdate, почему бы вам не добавить аппаратную синхронизацию к этому cron'у (или сделать вторую)? Я использовал этот же метод на некоторых действительно старых коробках RHEL 3 и 4 моей компании, чтобы синхронизировать их часы.

0 */4 * * * ntpdate mytimeserver.com && ( hwclock --adjust; hwclock -w )

Этот cron обновит аппаратные часы до системного времени, если ntpdate будет успешным. Дополнительная информация о командах hwclock.

Добавлено примечание:

mytimeserver.com для меня это внутренний vip с несколькими временными серверами для избыточности. Если у вас нет доступа к одному и тому же, вы должны изменить ntp сервер на разные ntp пулы так, чтобы каждая система не зависела от одного и только одного ntp сервера.

Сервер 1:

0 */4 * * * ntpdate 0.pool.ntp.org  && ( hwclock --adjust; hwclock -w )

Сервер 2:

0 */4 * * * ntpdate 1.pool.ntp.org  && ( hwclock --adjust; hwclock -w )
3
27.01.2020, 21:14

Запуск ntpdate из задания cron будет корректировать системное время при каждом запуске, но это не означает, что ваша система " NTP synchronized »(часы могут дрейфовать между периодическими синхронизациями), и ядро ​​не будет автоматически синхронизировать RTC.

Есть ли какая-то конкретная причина, по которой вы запускаете ntpdate из задания cron, а не запускаете ntpd ? ntpd будет поддерживать гораздо более точное время, имеет больше возможностей для проверки ошибок (чтобы ошибочный сервер времени не создавал для вас хаоса) и регулирует тактовую частоту системы для компенсации дрейфа генератора.

Кроме того, он будет сообщать ядру "статус синхронизации NTP", которое затем будет периодически устанавливать hwclock.

Из справочной страницы ntpdate :

ntpdate можно запустить вручную, если необходимо, чтобы установить часы хоста, или его можно запустить из сценария запуска хоста, чтобы установить часы во время загрузки. В некоторых случаях это полезно для первоначальной установки часов перед запуском демона NTP ntpd. Также можно запустить ntpdate из скрипта cron.Однако важно отметить, что ntpdate с надуманными сценариями cron не заменяет демона NTP, который использует сложные алгоритмы для максимальной точности и надежности при минимальном использовании ресурсов. Наконец, поскольку ntpdate не контролирует тактовую частоту хоста, как это делает ntpd, точность использования ntpdate ограничена.

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

2
27.01.2020, 21:14

ntpdate не сбрасывает флаг STA_UNSYNC при настройке системного времени. Таким образом, ядро ​​считает, что системное время недействительно, и не обновляет RTC. Он не очищает STA_UNSYNC , потому что он использует adjtime () для установки системного времени вместо adjtimex () .

Чтобы использовать функцию CONFIG_RTC_SYSTOHC , вы должны использовать инструмент, который очищает флаг STA_UNSYNC , то есть ntpd .

Возможно, о проблеме следует сообщить разработчикам ntpdate .

1
27.01.2020, 21:14

Теги

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