Какой сервер времени используется Ubuntu?

Вопрос или проблема

Какой URL сервера таймера, используемого Ubuntu?

Страница настроек просто показывает радиокнопку “Автоматически из Интернета”, но не показывает фактический URL сервера, как в Windows.

enter image description here

По умолчанию ваша система будет использовать NTP сервер Ubuntu по адресу ntp.ubuntu.com.

Чтобы узнать, какой NTP сервер используется, выполните следующую команду:

grep ^server /etc/ntp.conf

Если вы получите ошибку, значит NTP не установлен. Чтобы установить его, просто нажмите Ctrl+Alt+T на клавиатуре, чтобы открыть Терминал. Когда он откроется, выполните следующую команду:

sudo apt-get install ntp

enter image description here

Обычно ntp.ubuntu.com. Это поддерживается примерами файлов preseed, а также значением, используемым методами установки сервера и сети (для которых отладочный вывод показывает ntp.ubuntu.com как значение для NTP сервера). Чтобы проверить статус сервера и время, вы можете запустить ntpdate в режиме отладки (чтобы увидеть, есть ли другие проблемы) или в режиме запроса (чтобы просто увидеть время):

ntpdate -d ntp.ubuntu.com # Режим отладки
ntpdate -q ntp.ubuntu.com # Режим запроса

ntpdate устарел. Вы можете использовать эту команду, чтобы получить статус и увидеть, какой сервер используется:

systemctl status systemd-timesyncd

Как уже указано в ответе SaTa, это теперь управляется системой systemd с службой systemd-timesyncd.

Конфигурация находится в /etc/systemd/timesyncd.conf.

Используйте команду timedatectl и ее вариации с аргументами, чтобы увидеть всю информацию. Например:

timedatectl
timedatectl timesync-status
timedatectl show-timesync

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

Я думаю, это зависит от того, какие пакеты у вас установлены. Вот как проверить фактически используемую синхронизацию в случае, если у вас запущен ntpd. Если у вас запущен ntpd, он должен использовать конфигурацию из /etc/ntp.conf, которая, вероятно, будет содержать несколько строк pool, таких как

pool fi.pool.ntp.org
pool se.pool.ntp.org
pool time.google.com
pool time.cloudflare.com

Эти строки определяют список серверов, чтобы сравнить их с текущим системным временем и выяснить точную корректировку. Чтобы проверить, как все возможные серверы времени работают по сравнению с вашей текущей системой, вы можете запустить ntpq -pn, который показывает текущий статус следующим образом:

     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 fi.pool.ntp.org .POOL.          16 p    -   64    0    0.000   +0.000   0.000
 se.pool.ntp.org .POOL.          16 p    -   64    0    0.000   +0.000   0.000
 time.google.com .POOL.          16 p    -   64    0    0.000   +0.000   0.000
 time.cloudflare .POOL.          16 p    -   64    0    0.000   +0.000   0.000
 ntp.ubuntu.com  .POOL.          16 p    -   64    0    0.000   +0.000   0.000
-194.58.204.148  .PPS.            1 u  104  128  377   20.981   -0.278   0.068
+185.251.115.30  .GPS.            1 u   96  128  377    8.219   -0.234   0.084
-216.239.35.12   .GOOG.           1 u   88  128  377    9.461   +0.297   0.166
-162.159.200.123 10.79.9.32       3 u   84  128  377    6.628   -0.430   0.098
-216.239.35.0    .GOOG.           1 u   95  128  377    9.465   +0.035   0.112
-216.239.35.8    .GOOG.           1 u   94  128  377    9.426   +0.150   0.117
-193.182.111.13  194.58.202.20    2 u   27  128  377   11.436   -0.270   0.073
+162.159.200.1   10.79.9.32       3 u    6  128  377    6.269   -0.384   0.051
*216.239.35.4    .GOOG.           1 u   18  128  377    9.231   +0.004   0.143

Строки с refid со значением .POOL. просто содержат информацию о названиях, используемых для поиска серверов времени (настройки pool в /etc/ntp.conf) и не содержат реальной информации. when показывает, через сколько секунд ntpd проверит синхронизацию времени с данным сервером снова.

Символ * в начале строки помечает сервер времени, который в настоящее время считается наилучшим. Символ + означает сервер, включенный в оценку истинного времени, # означает сервер, который может быть использован как +, но ntpd уже имеет достаточно серверов, чтобы не использовать этот (логически резервный сервер), а - означает сервер, который по какой-то причине считается слишком низкокачественным по сравнению с другими известными серверами (например, нестабильная доставка пакетов). delay, offset и jitter указаны в миллисекундах (мс).

Вы также можете попробовать запустить команду ntptime, которая выводит что-то похожее на это:

ntp_gettime() returns code 0 (OK)
  time eb71a5f6.3003eea4  Tue, Mar  4 2025 18:16:54.187, (.187560496),
  maximum error 303194 us, estimated error 370 us, TAI offset 37
ntp_adjtime() returns code 0 (OK)
  modes 0x0 (),
  offset -56.185 us, frequency 13.052 ppm, interval 1 s,
  maximum error 303194 us, estimated error 370 us,
  status 0x2001 (PLL,NANO),
  time constant 7, precision 0.001 us, tolerance 500 ppm,

Здесь estimated error показывает оценочную ошибку относительно истинного времени (в этом примере 370 мкс или 0.37 мс), а maximum error показывает теоретическую максимальную ошибку в текущем времени с учетом текущих данных (около 0.3 секунды в этом примере).

Показатель frequency 13.052 ppm показывает текущую корректировку, применяемую к часам, в то время как ntpd пытается приблизиться к истинному времени. Если ваши системные часы близки к истинному времени (оценочная ошибка очень мала), это фактически является оценкой качества кристалла времени на вашей материнской плате, используемого для синхронизации ЦП и системных часов.

Ответ или решение

У операционной системы Ubuntu для синхронизации системного времени по умолчанию используется сервер времени (NTP-сервер) под доменом ntp.ubuntu.com. Этот сервер позволяет системе поддерживать точное время, автоматически корректируя его, опираясь на стандарты всемирного времени. Это особенно важно для серверных систем и приложений, где точность времени играет критическую роль в операциях и коммуникациях.

Теория

Протокол сетевого времени (Network Time Protocol, NTP) используется для синхронизации времени компьютерных систем в сетях передачи данных с переменной задержкой. Он обеспечивает точное и надежное поддержание времени, используя иерархическую систему серверов, где верхние уровни (stratum 0 и stratum 1) представляют собой высокоточные устройства, такие как атомные часы или спутники GPS. Время от этих серверов распространяется дальше по сети на нижестоящие уровни.

Ubuntu изначально использует систему с systemd-timesyncd, которая более легковесна по сравнению с классической реализацией NTP, и это упрощает процесс настройки для большинства пользователей и администраторов. Однако, возможно использование и других реализаций, таких как ntpd, в зависимости от требований и предпочтений.

Пример

Для проверки, какой сервер времени используется вашей системой, можно воспользоваться несколькими командами:

  1. Для проверки статуса синхронизации времени:

    systemctl status systemd-timesyncd

    Эта команда отобразит состояние службы systemd-timesyncd, включая используемый сервер времени.

  2. Для получения дополнительной информации о синхронизации времени:

    timedatectl timesync-status

    Выведет детальные сведения о текущем статусе синхронизации, включая задержку, ошибку и прочие параметры.

  3. Для работы с ntpd (если он установлен):

    Проверка конфигурации возможна через просмотр файла /etc/ntp.conf, где могут быть указаны конкретные пул-серверы:

    grep ^pool /etc/ntp.conf

    Если используются пул-серверы, такие как fi.pool.ntp.org, time.google.com, и другие, они будут упомянуты в этом файле.

    Команда ntpq -pn также предоставит информацию о текущем статусе соединения с серверами времени, показывая информацию о задержке, смещении и качества связи с каждым из них.

Применение

Для установки и настройки синхронизации времени в Ubuntu, можно следовать простым шагам:

  1. Установка NTP:

    Если требуется установка классического ntpd, это можно сделать через:

    sudo apt-get update
    sudo apt-get install ntp

    После установки можно отредактировать файл /etc/ntp.conf для указания используемых серверов.

  2. Настройка systemd-timesyncd (по умолчанию):

    Файл конфигурации для systemd-timesyncd находится по адресу /etc/systemd/timesyncd.conf. Здесь можно изменить серверы по умолчанию или добавить дополнительные. Пример изменения:

    [Time]
    NTP=ntp.ubuntu.com time.google.com
    FallbackNTP=pool.ntp.org
  3. Проверка конфигурации:

    После внесения изменений рекомендуется перезапустить соответствующую службу, чтобы изменения вступили в силу:

    sudo systemctl restart systemd-timesyncd

Эти шаги обеспечат поддержку корректного времени, что важно для безопасности, логирования и работы сетевых приложений. Поддержание точного времени — неотъемлемая часть администрирования современных систем, и использование стандартных NTP-серверов, таких как ntp.ubuntu.com, — надежный выбор для большинства инфраструктур.

Оцените материал
Добавить комментарий

Капча загружается...