Вопрос или проблема
У меня есть машина с CentOS, и каждый раз я замечаю, что сервер теряет точное время через некоторое время. Обычно он отстает на несколько минут после того, как я вручную установил правильное время. Существует ли механизм, с помощью которого я могу обновить сервер временем с указанного временного сервера?
Используйте демон ntp
. Запустите yum install ntp
и убедитесь, что сервис запущен через ntsysv
или chkconfig ntpd on
.
Чтобы получить немедленную синхронизацию, выполните ntpdate time.apple.com
(или что-то подобное).
Вам нужно установить и настроить ntp.
yum install ntp
chkconfig ntpd on
ntpdate pool.ntp.org
service ntpd start
Это должно настроить и запустить систему. Вы можете обнаружить, что пакет ntp уже установлен и просто требует настройки.
Да.
yum install ntp
chkconfig ntpd on
Сделайте первоначальную синхронизацию с помощью
ntpdate pool.ntp.org
и запустите временной демон с помощью:
/etc/init.d/ntpd start
Вам нужно будет настроить ntpd для сервера. Я подозреваю, что он уже установлен, но требует настройки. Примечание: если это виртуальный сервер, у вас, вероятно, есть возможность синхронизации с виртуальным хостом.
Для установки centos 7.x:
yum install ntp
systemctl enable ntpd
первоначальная синхронизация с:
ntpdate pool.ntp.org
запустите демон с помощью:
systemctl start ntpd
ntpd.
Ntpd делает именно то, что вам нужно – синхронизирует ваш системный часы с одним или несколькими известными серверами времени.
В основном есть два способа. Демон NTP и команда ntpdate. Самое важное отличие в том, что ntpdate синхронизирует время сразу, даже если это означает, что системное время изменится. С другой стороны, демон NTP позаботится о синхронизации времени, и он будет корректировать время небольшими шагами – вы можете представить это как замедление/ускорение времени компьютера для синхронизации его с правильным временем. Вот почему люди предлагают делать первоначальную синхронизацию с помощью ntpdate, а затем оставлять это на демоне ntp.
В случае Centos 8
я просто запускаю/включаю chronyd
следующим образом:
systemctl start chronyd
systemctl enable chronyd
Да, я бы использовал NTP, установил бы ntp с помощью yum и включил бы его.
yum install ntp
chkconfig ntpd on
Затем синхронизируйте его с любым сервером ntp по вашему выбору с помощью команды ntpdate
Также, если использовать CPanel, как я делал и имел эту проблему. Я думаю, что использовать rdate. Переход к ntpd, как указано выше, исправляет все проблемы с электронной почтой, особенно dovecot и т. д.
Ответ или решение
Как обновить время на сервере CentOS с авторитетного временного сервера
Обновление времени на сервере CentOS — это важный процесс, который помогает поддерживать синхронизацию системы и предотвращает возможные проблемы, связанные с неправильным временем. В данной статье мы рассмотрим, как установить и настроить NTP (Network Time Protocol) для автоматического обновления времени с авторитетного временного сервера.
Установка NTP
Первым делом необходимо установить пакет ntp
. Это можно сделать с помощью пакетного менеджера yum
(или dnf
для более новых версий CentOS). Откройте терминал и выполните следующую команду:
sudo yum install ntp
Включение и запуск службы NTP
После установки необходимо включить службу ntpd
, чтобы она запускалась автоматически при загрузке системы:
Для CentOS 7:
sudo systemctl enable ntpd
Для CentOS 8 и новее, использование systemd
также требуется:
sudo systemctl enable ntpd
Далее, чтобы немедленно запустить службу, выполните:
sudo systemctl start ntpd
Начальная синхронизация времени
Перед тем как NTP начнет работать, желательно произвести начальную синхронизацию времени. Это можно сделать с помощью команды ntpdate
. Эта команда немедленно обновит время на сервере:
sudo ntpdate pool.ntp.org
Вы можете заменить pool.ntp.org
на любой другой авторитетный временной сервер, например, time.apple.com
.
Конфигурация NTP
Чтобы дополнительно настроить ntpd
, измените файл конфигурации /etc/ntp.conf
. Можно добавить или изменить серверы времени, с которыми будет синхронизироваться ваш сервер. Откройте файл в редакторе:
sudo vi /etc/ntp.conf
Пример содержимого конфигурационного файла:
# Установите сервера времени
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst
После внесения изменений в конфигурацию перезапустите службу NTP для применения новых настроек:
sudo systemctl restart ntpd
Проверка статуса синхронизации
Для проверки состояния синхронизации времени можно использовать команду:
ntpq -p
Эта команда покажет список серверов, с которыми ваш сервер синхронизируется, и статус их доступности.
Устранение возможных проблем
Если вы обнаружите, что время на вашем сервере продолжает дрейфовать, проверьте следующее:
- Сетевое соединение: Убедитесь, что ваш сервер имеет доступ к интернету и может связаться с временными серверами.
- Настройки брандмауэра: Проверьте, что порты UDP 123 (используемый NTP) открыты.
- Во время его работы: Убедитесь, что
ntpd
работает, и его автоматический запуск включен.
Заключение
Поддержание правильной синхронизации времени является важной частью администрирования сервера. Установка и настройка NTP
на CentOS поможет избежать проблем, связанных с неправильным временем, и гарантирует надежную работу серверных приложений. Если вам нужно мгновенно синхронизировать время, используйте ntpdate
, но для долгосрочного контроля используйте ntpd
. Надеюсь, эта инструкция была полезной и поможет вам поддерживать ваш сервер в хорошей форме.