Для периодического запуска программы ntpdate
часто используется инструмент cron
. В большинстве случаев достаточно запускать ntpdate
один раз в сутки, но если необходима более высокая точность, ее можно вызывать чаще, например, один раз в день. Периодическое выполнение ntpdate
уменьшит NTP-трафик по сравнению с использованием ntpd
.
Если вы используете для синхронизации времени общедоступный сервер, не планируйте вызов ntpdate
на полуночь. Почему-то многие администраторы считают, что полночь — наилучшее время для коррекции системных часов, в результате в это время на сервер обрушивается лавина запросов. Указывайте для вызова ntpdate
любое другое подходящее время, например 1:23 или 3:48. Это обеспечит более равномерную нагрузку на сервер, а ваша служба времени будет работать более точно и надежно, так как при обращении к серверу не возникнут непредвиденные задержки.
Использование Samba для предоставления данных о времени
Как вы уже имели возможность убедиться, NTP — чрезвычайно полезный протокол, позволяющий поддерживать с высокой точностью показания системных часов на компьютерах под управлением Linux. Кроме NTP, существуют и другие протоколы подобного назначения. Один из них реализован в составе протоколов SMB/CIFS, используемых для разделения файлов и принтеров. (Эти протоколы и реализующий их продукт Samba рассматривались в главе 7.) Если вы планируете запустить сервер NTP на компьютере, на котором установлен сервер Samba, примите во внимание тот факт, что гораздо проще сконфигурировать Samba для предоставления данных о времени, чем инсталлировать клиенты NTP на каждом из Windows-компьютеров. (Samba не позволяет устанавливать системное время, обращаясь к серверу SMB/CIFS, работающему под управлением Windows.)
Опция временного сервера в конфигурационном файле Samba
Как вы уже знаете, конфигурационный файл smb.conf
используемый для настройки сервера Samba, состоит из нескольких разделов, большинство из которых описывает разделяемые каталоги. Однако первый раздел с именем [global]
содержит установки по умолчанию, а также опции, которые не могут быть включены в описания разделяемых объектов. Одна из этих опций, time server, позволяет активизировать временной сервер. Для этого надо включить в файл smb.conf
следующее выражение:
time server = Yes
Данное значение опции указывает на то, что сервер Samba должен отвечать на запросы клиентов SMB/CIFS и предоставлять им сведения о текущем времени. Вы можете задавать данное значение опции независимо от того, используется ли на вашем компьютере ntpdate
, rdate
или другая программа. Однако следует заметить, что для того, чтобы сервер Samba предоставлял точные данные о времени, следует принять меры для синхронизации системных часов этого компьютера.
Протокол SMB/CIFS не обеспечивает такой точности установки времени, как NTP. Сразу после выполнения процедуры синхронизации времени разница в показаниях системных часов различных Windows-клиентов может составлять около секунды.
Настройка Windows-клиента для автоматической коррекции системного времени
Для того чтобы установить текущее время на клиентской машине под управлением Windows, надо выполнить следующую команду:
С:\> NET TIME\\
В данном случае
— это NetBIOS-имя сервера Samba. Как и при использовании программы ntpdate в системе Linux, вы можете ввести данную команду вручную. Возможно, вы предпочтете, чтобы эта команда выполнялась при загрузке системы или при регистрации пользователя в ней. Для этого надо включить ее в файл .ВАТ
(он может называться, например, SETTIME.ВАТ
) и скопировать этот файл в папку Startup. Если ваша сеть состоит из доменов, вы можете включить данную команду в состав сценария регистрации, используемого по умолчанию. (Из AUTOEXEC.BAT
ее вызывать нельзя, поскольку при выполнении этого файла сетевые средства еще не запущены.)