Как синхронизировать системные часы Linux с NTP-сервером

9 feb 2023 2 min di lettura
Как синхронизировать системные часы Linux с NTP-сервером
Indice dei contenuti

Введение

NTP (Network Time Protocol) — это протокол, позволяющий синхронизировать время компьютеров в сети. NTP-сервер — это система, которая выступает в качестве эталона для синхронизации времени и предоставляет точное время клиентам, которые к нему подключаются.

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

Чтобы настроить сервер NTP, вам необходимо установить программное обеспечение NTP на сервере и настроить клиентов для доступа к серверу NTP. Сервер NTP можно настроить для синхронизации времени с одним или несколькими внешними эталонами времени, такими как серверы времени в Интернете.

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

Точное хронометраж является важным аспектом любой компьютерной системы и особенно важен для серверов, где правильное время имеет решающее значение для многих приложений, таких как ведение журнала, аутентификация и безопасность. Протокол сетевого времени (NTP) — это широко используемый протокол для синхронизации часов компьютера по сети.

В Linux системные часы можно синхронизировать с NTP-сервером с помощью утилиты командной строки timedatectl, которая является частью системы systemd и диспетчера служб. Утилита timedatectl предоставляет простой и удобный способ управления системным временем и датой, включая настройку конфигурации NTP.

Установите службу синхронизации времени

Timesync — это минималистичный сервис для синхронизации местного времени с NTP-серверами. Пакет содержит системную службу systemd-timesyncd, которую можно использовать для синхронизации локальных системных часов с удаленным сервером Network Time Protocol.

Чтобы установить службу, выполните следующую команду:

apt install systemd-timesyncd

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

sudo systemctl status systemd-timesyncd
● systemd-timesyncd.service - Network Time Synchronization
 Loaded: loaded (/lib/systemd/system/systemd-timesyncd.service; enabled; vendor preset: enabled)
 Active: active (running) since Thu 2023-02-02 11:57:46 UTC; 3min 53s ago
 Docs: man:systemd-timesyncd.service(8)
 Main PID: 2004 (systemd-timesyn)
 Status: "Connecting to time server 80.88.90.14:123 (0.debian.pool.ntp.org)."
 Tasks: 2 (limit: 1828)
 Memory: 1.0M
 CPU: 48ms
 CGroup: /system.slice/systemd-timesyncd.service
 └─2004 /lib/systemd/systemd-timesyncd

Включить синхронизацию часов

Чтобы синхронизировать системные часы Linux с NTP-сервером с помощью timedatectl, вам необходимо выполнить следующую команду от имени пользователя root или использовать sudo:

sudo timedatectl set-ntp true

Эта команда включает функцию синхронизации NTP и заставляет систему автоматически запускать синхронизацию с серверами NTP, указанными в файле конфигурации /etc/systemd/timesyncd.conf. По умолчанию служба timesyncd использует известный пул серверов NTP, который предоставляет большое количество общедоступных серверов NTP.

Проверьте изменения

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

timedatectl

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

Синхронизируйте аппаратные часы

Важно отметить, что команда timedatectl влияет только на системные часы, которые являются основными системными часами, используемыми операционной системой и приложениями. Аппаратные часы, также известные как часы реального времени (RTC), представляют собой отдельные часы, которые работают независимо от системы и используются для отображения времени, даже когда система выключена. Чтобы синхронизировать аппаратные часы с системными, вам необходимо выполнить следующую команду:

sudo timedatectl set-local-rtc 1

Заключение

В заключение, команда timedatectl set-ntp — это простой и удобный способ синхронизировать системные часы Linux с NTP-сервером и обеспечить точное отслеживание времени в вашей системе. Используя NTP, вы можете гарантировать согласованность и точность системного времени и избежать потенциальных проблем, вызванных неправильными настройками времени.

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.