Wyszukiwanie w witrynie

Jak zainstalować Chrony NTP, aby zsynchronizować czas w systemie Linux


Network Time Protocol (NTP) to protokół używany do automatycznej synchronizacji zegarów systemowych komputera w sieci. Zegar systemowy może używać uniwersalnego czasu koordynowanego (UTC), a nie czasu lokalnego.

Utrzymywanie dokładnego czasu w systemach Linux, zwłaszcza na serwerach, jest ważnym zadaniem z wielu powodów. Na przykład w środowisku sieciowym wymagany jest dokładny pomiar czasu w celu uzyskania dokładnych znaczników czasu w pakietach i dziennikach systemowych na potrzeby analizy przyczyn źródłowych, określenia, kiedy wystąpiły problemy i znalezienia korelacji.

Chrony jest teraz domyślnym pakietem implementacyjnym NTP w najnowszych wersjach dystrybucji opartych na RHEL, takich jak CentOS Stream, Fedora >, Rocky Linux i AlmaLinux oraz dystrybucje oparte na Debianie, takie jak między innymi Ubuntu i Linux Mint, i jest domyślnie preinstalowany.

Pakiet Chrony składa się z chronyd, demona działającego w przestrzeni użytkownika, oraz chronyc, programu wiersza poleceń do monitorowania i kontrolowania chronyd .

Chrony to wszechstronna implementacja NTP, która dobrze sprawdza się w szerokim zakresie warunków (sprawdź porównanie pakietu chrony z innymi implementacjami NTP). Można go wykorzystać do synchronizacji zegara systemowego z serwerami NTP (pełniącymi funkcję klienta), z zegarem referencyjnym (np. odbiornikiem GPS) lub z ręcznym wprowadzaniem czasu. Może być również używany jako serwer NTPv4 (RFC 5905) lub równorzędny w celu zapewnienia usługi czasu innym komputerom w sieci.

W tym artykule dowiesz się, jak synchronizować czas serwera z NTP w systemie Linux za pomocą chrony.

Instalowanie Chrony na serwerze Linux

W większości systemów Linux polecenie chrony nie jest domyślnie instalowane. Aby go zainstalować, wykonaj poniższe polecenie.

sudo yum install chrony         [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]
sudo apt install chrony         [On Debian, Ubuntu and Mint]

Domyślna lokalizacja demona chrony to /usr/sbin/chronyd, a program wiersza poleceń zostanie zainstalowany w /usr/bin/chronyc. >

Po zakończeniu instalacji uruchom usługę chrony i włącz ją, aby automatycznie uruchamiała się przy starcie systemu, a następnie sprawdź, czy jest uruchomiona i działa.

systemctl enable --now chronyd
systemctl status chronyd

Aby sprawdzić, czy chrony jest teraz uruchomiony i działa prawidłowo oraz zobaczyć liczbę serwerów i urządzeń równorzędnych, które są z nim połączone, uruchom następującą komendę chronyc.

chronyc activity

Sprawdzanie synchronizacji Chrony w systemie Linux

Aby wyświetlić informacje (lista dostępnych serwerów, status i przesunięcia względem lokalnego zegara i źródła) o bieżących źródłach czasu, do których uzyskuje dostęp chronyd, uruchom następującą komendę z -v Flaga pokazuje opis każdej kolumny.

chronyc sources
OR
chronyc sources -v

Jeśli chodzi o poprzednie polecenie, aby wyświetlić inne przydatne informacje dla każdego źródła aktualnie badanego przez chronyd (takie jak prędkość dryfu i proces szacowania przesunięcia), użyj polecenia sourcestats .

chronyc sourcestats
OR
chronyc sourcestats -v

Aby sprawdzić śledzenie chrony, uruchom następujące polecenie.

chronyc tracking

W wynikach tego polecenia identyfikator referencyjny określa nazwę (lub adres IP), jeśli jest dostępny, serwera, z którym komputer jest aktualnie synchronizowany, spośród wszystkich dostępnych serwerów.

Konfigurowanie źródeł czasu Chrony w systemie Linux

Główny plik konfiguracyjny chrony znajduje się w /etc/chrony.conf (CentOS/RHEL/Fedora) lub /etc/chrony /chrony.conf (Ubuntu/Debian).

Podczas instalowania systemu operacyjnego Linux w chmurze, w systemie powinny być dodane serwery domyślne lub pula serwerów podczas procesu instalacji. Aby dodać lub zmienić domyślne serwery, otwórz plik konfiguracyjny do edycji:

vi /etc/chrony.conf
OR
vi /etc/chrony/chrony.conf

Możesz dodać kilka serwerów, korzystając z dyrektywy serwera, jak pokazano.

server 0.europe.pool.ntp.org iburst
server 1.europe.pool.ntp.org iburst
server 2.europe.pool.ntp.org ibusrt
server 3.europe.pool.ntp.org ibusrt

lub w większości przypadków najlepiej jest użyć ntppool.org, aby znaleźć serwer NTP. Dzięki temu system może spróbować znaleźć dla Ciebie najbliższe dostępne serwery. Aby dodać pulę, użyj dyrektywy puli:

pool 0.pool.ntp.org burst

Istnieje wiele innych opcji, które możesz skonfigurować w pliku. Po wprowadzeniu zmian uruchom ponownie usługę chrony.

sudo systemctl restart chrony		
OR
systemctl restart chronyd

Aby wyświetlić informacje o bieżących źródłach czasu, o które pyta chronyd, uruchom jeszcze raz poniższe polecenie.

chronyc sources

Aby sprawdzić stan śledzenia chrony, uruchom następujące polecenie.

chronyc tracking

Aby wyświetlić aktualny czas w systemie, sprawdź, czy zegar systemowy jest zsynchronizowany i czy NTP rzeczywiście jest aktywny, uruchom komendę timedatectl:

timedatectl

To prowadzi nas do końca tego przewodnika. Jeśli masz jakieś pytania, skontaktuj się z nami za pośrednictwem sekcji komentarzy poniżej. Aby uzyskać więcej informacji, zobacz: używanie pakietu chrony do konfiguracji NTP z dokumentacji RHEL lub używanie chrony do konfiguracji NTP z oficjalnego bloga Ubuntu.