ntpd и hwclock
seyko 6 декабря, 2007 - 16:18
Никто к ntpd функционал hwclock не прикручивал? Типа при отсутствии вышестоящих серверов регулярно (скажем раз в час) выполнять внешний батник типа
hwclock --ajust
hwclock --hctosys
А то что мы ныне имеем на машине с ntpd при упавшем внешнем сервере или сети? Время уходит (спешит или отстает) и некому его корректировать, ибо запускать hwclock при работающем ntpd нельзя -- коррецией времени должен заниматься кто-то один. А ntpd при упавшей сети сам тоже ничего не корректирует.
PS: а при завершении работы или раз, скажем, в неделю можно выполнять батник типа
hwclock --systohc
»
- Для комментирования войдите или зарегистрируйтесь
изучаю chrony
Вроде это как раз то, что нужно. Кто-нибудь это пользует?
Я не очень
Я не очень понимаю смысл этого действа. Ntpd довольно продвинутая программа: сервер не только разово синхронизирует часы, но и пытается исправить уход. Поэтому даже если синхронизироваться не удаётся, время должно идти более-менее правильно.
Если у Вас время идёт не правильно, попробуйте синхронизироваться с самыми близкими серверами 1 стратума...
Откуда это видно?
"пытается исправить уход"... каким макаром? Вот включили мы комп, инета нет. И долго. Скажем неделю (ну в деревню комп перевезли или notebook на природе мучаем). ntpd что-нибудь знает про RTC (hwclock), просчитал и запомнил уход этих часов (за время, когда inet был доступен) и теперь подкручивает hwclock вместе с системным временем ? Не верю. Ибо ничего про это в его документации не нашел. Вот в документации про chrony как раз все это и описано.
А ntpd при отсутствии инета -- это рассинхронизация всей локальной сети. chrony работает демоном и при отсутствии синхронизации с вышестоящим хостом. ntpd -- всех посылает нафиг. И запросто можно не заметить (при проблемах связи с вышестоящим ntp-сервером), что сеть-то -- не синхронизирована
Хотя вот есть у ntpd в конфигурации drift-файл. Если он используется при старте ntpd и отсутствии соединения с ntp-серверами для подкрутки системного времени (drift-файл -- уход часов системы от точного за какой-то промежуток), тогда вроде все в порядке -- и можно сказать, что ntpd "пытается исправить уход". А с rtc неплохо справляется и hwclock
PS: спасибо за критический вопрос
Конечно, очень
Конечно, очень неплохо прочитать man -a ntpd перед тем как задавать вопросы, но всё же:
знает.
С помощью drift файла.
А вот это очень странно. Может быть Вы его как-то не так настроили?
По идее, если ntpd после старта не смог синхронизировать время, то это скажется на статусе системных часов, хотя исправлять время в соответствии с drift файлом он должен всегда...
Чего нашел в man
Чего нашел в man hwclock:
Я, собственно, хотел прочитать про hwclock --adjust там, но этот вариант, похоже, более интересен.
Тема из книги
Тема из книги Некрономикона.
/etc/conf.d/hwclock из openrc, там этот параметр есть.
Не грусти, товарищ! Всё хорошо, beautiful good!
Не надо изобретать
Не надо изобретать велосипед!
ntpd специально сделан для синхронизации времени и (как и другие базовые проги *NIX'а) делает только это, но делает это очень хорошо!
А вам рекомендую использовать не один внешний сервер, а несколько. В том числе может быть и внутренние часы самого компа.
Изучайте матчасть и читайте доки!
Кстати, в доках написано, что при использовании ntpd НЕЛЬЗЯ менять время другими средствами, - иначе он неправильно рассчитает коррекцию и все будет очень плохо. :)
.
К сожалению те благословенные времена давно канули в Лету.
Что в итоге породило целый класс костылей (
sys-process/daemontools
и т.д.).:wq
--
Live free or die
SysA написал(а): Кстати, в
Это когда он запущен. А когда роутер выключен на неизвестное заранее время, причем не штатно, а просто света нет, да еще cmos clock за несколько месяцев аптайма уползли в неизвестном направлении, да еще юзается что-то вроде dovecot - вот тогда после включения без админа рядом таки было плохо =)
Здесь можно поискать и найти старую тему про ntpd... Там еще ntp-client участвовал ;)