ИТ Блог. Администрирование серверов на основе Linux (Ubuntu, Debian, CentOS, openSUSE)

Как настроить синхронизацию времени на Ubuntu 16.04

Как настроить синхронизацию времени на Ubuntu 16.04

Введение

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

Ubuntu 16.04 имеет синхронизацию времени, построенную и активированную по умолчанию с помощью сервиса timesyncd в Systemd. В этой статье мы рассмотрим некоторые основные команды, связанные со временем, убедитесь, что timesyncd активен, и знаете, как установить альтернативную службу сетевого времени.

Предпосылки

Перед началом этой статьей вам потребуется сервер Ubuntu 16.04 с некорневой, sudo поддержкой пользователя, как описано в этом учебнике по первоначальной настройки сервера Ubuntu 16.04.

Самая основная команда для того, чтобы узнать время на вашем сервере date. Любой пользователь может ввести эту команду для распечатки даты и времени:

date

 

Вывод
Mo May 15 20:33:50 UTC 2017

 

Чаще всего ваш сервер по умолчанию укажет UTC часовой пояс, как подчеркивается в выводе выше. UTC является координированное время, время на ноль градусов долготы. Последовательно используя Universal Time уменьшает путаницу  когда ваша инфраструктура охватывает несколько временных зон.

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

Во-первых, список доступных часовых поясов:

timedatectl list-timezones

 

Список часовых поясов будет распечатан на экране. Вы можете нажать SPACE на страницу вниз, и на страницу вверх. После того, как вы найдете правильный часовой пояс, введите чтобы выйти из списка.

Теперь установите часовой пояс с timedatectl set-timezone, убедившись в том, чтобы заменить выделенную часть ниже на часовой пояс, который вы нашли в списке. Вы должны будете использовать sudo с timedatectl чтобы сделать эти изменения:

sudo timedatectl set-timezone America/New_York

 

Вы можете проверить изменения, выполнив date еще раз:

date

 

Вывод
Mo May 15 20:33:50 EDT 2017

 

Зона времени должна отразить вновь выбранное значение.

Теперь, когда мы знаем, как проверить часы и установить временные зоны, давайте удостоверимся, что наше время синхронизируются правильно.

Управление timesyncd с timedatectl

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

По умолчанию в Ubuntu теперь использует timesyncd вместо ntpd. timesyncd подключается к тем же серверам времени и работает примерно так же, но более легкие и более интегрированный с Systemd и командами низкого уровня Ubuntu.

Мы можем запросить статус timesyncd, запустив timedatectl без аргументов. Вам не нужно использовать sudo в этом случае:

timedatectl

 

Вывод
Local time: Mo 2017-05-15 20:33:50 EDT
  Universal time: Mo 2017-05-15 20:33:50 EDT
        RTC time: Mo 2017-05-15 20:33:50
       Time zone: Etc/UTC (UTC, +0000)
 Network time on: yes
NTP synchronized: yes
 RTC in local TZ: no

 

Это распечатает местное время, всемирное время (которое может быть таким же, как местное время, если вы не перейдете от часового пояса UTC), а также некоторую информацию о времени сети. Network time on: yes означает, что timesyncd включен, и NTP synchronized: yes указывает на то, что время было успешно синхронизировано.

Если timesyncd не включен, включите его с помощью timedatectl:

sudo timedatectl set-ntp on

 

Выполните timedatectl еще раз, чтобы подтвердить статус сетевого времени. Это может занять минуту для фактической синхронизации, но в конце концов , как Network time on: и  NTP synchronized:следует читать yes.

Переключение на NTPD

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

Перед установкой ntpd, мы должны выключить timesyncd:

sudo timedatectl set-ntp no

 

Убедитесь в том, что timesyncd выключен:

timedatectl

 

Посмотрите Network time on: no на выходе. Это средство timesyncd было остановлено. Теперь мы можем установить пакет ntp с apt-get:

sudo apt-get install ntp

 

Ntpd будет запущен автоматически после установки. Вы можете запросить ntpd для получения информации о состоянии, чтобы убедиться, что все работает:

sudo ntpq -p

 

Вывод
remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
0.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000    0.000   0.000
1.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000    0.000   0.000
2.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000    0.000   0.000
3.ubuntu.pool.n .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
-makaki.miuku.ne 210.23.25.77     2 u   45   64    3  248.007   -0.489   1.137
-69.10.161.7     144.111.222.81   3 u   43   64    3   90.551    4.316   0.550
+static-ip-85-25 130.149.17.21    2 u   42   64    3   80.044   -2.829   0.900
+zepto.mcl.gg    192.53.103.108   2 u   40   64    3   83.331   -0.385   0.391

 

ntpq является инструментом для запроса ntpd. Флаг -p запрашивает информацию о NTP – подключенных серверах ntpd. Ваш выход будет немного отличаться, но должны быть перечислены стандартные серверы пулаUbuntu плюс несколько других. Имейте в виду, что это может занять несколько минут ntpd для установления соединения.

Вывод

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

 

Exit mobile version