Для нормального функционирования любого сервера требуется корректно настроить текущее время и обеспечить его своевременное обновление с определённой периодичностью.
Первоначальная установка времени
Первоначальная установка текущего времени в CentOS 7 производится при инсталляции операционной системы.
Войдя в раздел «Дата и время», можно задать часовой пояс, указав его на карте или выбрав соответствующий регион и город из выпадающих списков в верхней части окна. В нижней части окна можно установить текущее время и формат отображения.
Команды для получения и установки времени
Узнать текущее программное время на сервере позволяет команда date
Для установки времени вручную команда date
может иметь следующий формат: date MMDDhhmm
, где MM
— номер месяца в году (от 01 до 12); DD
— номер дня в месяце (от 01 до 31); hh
— номер часа в сутках (от 00 до 23); mm
— номер минуты в часе (от 00 до 59). Например:
Чтобы получить полную информацию обо всех параметрах команды date
, необходимо в командной строке набрать: date --help
Для получения расширенной информации о настройках времени на сервере используется команда timedatectl
Она показывает местное программное время, соответствующее ему всемирное время (UTC), время аппаратных часов сервера (RTC), установленный в системе часовой пояс (Time zone), состояние клиента синхронизации внутренних часов (NTP) и настройки перехода на сезонное (летнее/зимнее) время (DST).
Для установки времени вручную команда timedatectl
должна иметь следующий формат: timedatectl set-time 'YYYY-MM-DD hh:mm:ss'
, где YYYY
— номер года (от 0000 до 9999); MM
— номер месяца в году (от 01 до 12); DD
— номер дня в месяце (от 01 до 31); hh
— номер часа в сутках (от 00 до 23); mm
— номер минуты в часе (от 00 до 59); ss
— номер секунды в минуте (от 00 до 59). Например:
Примечание: Задать время с помощью команды timedatectl
можно только в том случае, если отключена синхронизация часов, то есть когда в информационном сообщении выводится NTP enabled: no
. Если синхронизация включена, система выдаст сообщение о невозможности выполнения команды.
Отключается синхронизация часов командой timedatectl set-ntp 0
, а включается командой timedatectl set-ntp 1
. Как и для всех булевых команд, вместо 1 здесь можно использовать on
или true
, вместо 0 — off
или false
.
Для смены часового пояса команда timedatectl
должна иметь формат: timedatectl set-timezone Region/City
, где Region
— регион, в котором находится часовой пояс; City
— город, характеризующий устанавливаемый часовой пояс. Например:
Просмотреть список всех городов в регионах можно с помощью команды timedatectl list-timezones
. Поскольку выводимый при этом список получается слишком большим, то лучше использовать её с фильтром grep
. Так, например, для просмотра городов европейского региона команду следует записывать следующим образом:
А для просмотра списка городов азиатского региона следует использовать такой фильтр:
Чтобы получить полную информацию обо всех параметрах команды timedatectl
, необходимо в командной строке набрать: timedatectl --help
Служба синхронизации времени
В последних релизах CentOS для синхронизации времени используется NTP-клиент chrony. По умолчанию chrony уже должен быть установлен в системе, а если нет, то установить его можно с помощью команды yum install chrony
Примечание: Об отсутствии NTP-клиента свидетельствует статус n/a
в строке NTP enabled
сообщения, выводимого командой timedatectl
.
После установки chrony его нужно включить и добавить в автозагрузку. Для этого последовательно введём команды systemctl start chronyd
и systemctl enable chronyd
Примечание: Будьте внимательны при наборе команд. Дело в том, что в пакет chrony включены две программы: демон chronyd и интерфейс командной строки chronyc. Указывайте правильно окончание названий запускаемых компонент.
Проверить статус сервиса можно командой systemctl status chronyd
Чтобы проверить информацию о текущих параметрах синхронизации времени, используем команду chronyc tracking
Чтобы проверить информацию о серверах синхронизации, используем команду chronyc sources
Конфигурационный файл chrony — /etc/chrony.conf
. В нём должен быть указать список NTP-серверов, которые нужно использовать для синхронизации. Посмотреть содержимое файла можно, например, с помощью редактора vi, набрав в командной строке: vi /etc/chrony.conf
Для просмотра же в редакторе nano соответственно набираем в командной строке: nano /etc/chrony.conf
Описание всех параметров файла конфигурации chrony.conf
можно найти, пройдя по ссылке https://chrony
Другие статьи по схожей тематике