Я поддерживаю некоторые задания cron на машинах, которые должны быть обновлены до пакета обновления SLES11sp4. Похоже, что пакет обновления обновляет sntp с версии 4.2.4p8 до 4.2.8p2, и где-то в середине этих релизов они удалили параметр «-P».
-P prompt
sets the maximum clock change that will be made automatically to
maxerr. Acceptable values are from 1 to 3600 or no, and the default is
30. If the program is being run interactively in ordinary client mode,
and the system clock is to be changed, larger corrections will prompt
the user for confirmation. Specifying no will disable this and the
correction will be made regardless.
и я использую это в задании cron очень просто:
/usr/sbin/sntp -P no -r $ips[1] >& /dev/null
/usr/sbin/sntp -P no -r $ips[2] >& /dev/null
где $ips — это, надеюсь, некоторые IP-адреса.
Я не увидел ничего похожего на это в новой версии, или тихого режима, или чего-то полезного. Так это просто по умолчанию теперь и я могу просто удалить "-P" или есть что-то еще, что нужно сделать
решение1
Похоже, что sntp был переписан между версиями 4.2.4p8 (выпущена 8 декабря 2009 г.) и 4.2.6 (выпущена 12 декабря 2009 г.).Журнал измененийв (внутренней) версии 4.2.5p201 указано:
2009/08/13 Выпущено Харланом Стенном
* sntp: долой старое, даёшь новое.
...и в этот момент флаг -P для sntp исчезает.
На странице руководства для новой версии есть примеры использования, один из которых: sntp -S ntpserver.somewhere
, что соответствует тому, что делал старый -r
флаг. Похоже, он не принимает несколько опций "ntpserver.somewhere", поэтому я не знаю, есть ли какая-то польза от его двойного запуска на разных серверах NTP.
решение2
ntpdate -b ntpserver
обычно используется во время загрузки для установки времени и делает именно то, что вам нужно. Подойдет ли он вам?