웹사이트 검색

Linux에서 시간을 동기화하기 위해 Chrony NTP를 설치하는 방법


네트워크 시간 프로토콜(NTP)은 네트워크를 통해 컴퓨터 시스템 시계를 자동으로 동기화하는 데 사용되는 프로토콜입니다. 시스템 시계가 현지 시간 대신 협정 세계시(UTC)를 사용하도록 설정할 수 있습니다.

Linux 시스템, 특히 서버에서 정확한 시간을 유지하는 것은 여러 가지 이유로 중요한 작업입니다. 예를 들어, 네트워크 환경에서는 근본 원인 분석, 문제 발생 시기 확인, 상관 관계 찾기를 위해 패킷 및 시스템 로그의 정확한 타임스탬프를 정확하게 기록하기 위해 정확한 시간 유지가 필요합니다.

Chrony는 이제 CentOS Stream, FedoraNTP 구현 패키지입니다. >, Rocky LinuxAlmaLinuxUbuntuLinux Mint와 같은 Debian 기반 배포판, 기본적으로 사전 설치되어 제공됩니다.

Chrony 패키지는 사용자 공간에서 실행되는 데몬인 chronydchronyd를 모니터링하고 제어하기 위한 명령줄 프로그램인 chronyc로 구성됩니다. .

Chrony는 다목적 NTP 구현이며 광범위한 조건에서 잘 작동합니다(chrony 제품군과 다른 NTP 구현 비교를 확인하세요). 이는 시스템 시계를 NTP 서버(클라이언트 역할), 참조 시계(예: GPS 수신기) 또는 수동 시간 입력과 동기화하는 데 사용할 수 있습니다. 또한 NTPv4(RFC 5905) 서버 또는 피어로 사용하여 네트워크의 다른 컴퓨터에 시간 서비스를 제공할 수도 있습니다.

이 문서에서는 chrony를 사용하여 Linux에서 NTP와 서버 시간을 동기화하는 방법을 알아봅니다.

Linux 서버에 Chrony 설치

대부분의 Linux 시스템에서는 chrony 명령이 기본적으로 설치되지 않습니다. 설치하려면 아래 명령을 실행하세요.

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

chrony 데몬의 기본 위치는 /usr/sbin/chronyd이고 명령줄 프로그램은 /usr/bin/chronyc 에 설치됩니다.

설치가 완료되면 chrony 서비스를 시작하고 시스템 부팅 시 자동으로 시작되도록 활성화한 다음 서비스가 실행 중인지 확인합니다.

systemctl enable --now chronyd
systemctl status chronyd

이제 chrony가 제대로 실행되고 있는지 교차 확인하고 연결된 서버 및 피어 수를 보려면 다음 chronyc 명령을 실행하세요.

chronyc activity

Linux에서 Chrony 동기화 확인

chronyd가 액세스하고 있는 현재 시간 소스에 대한 정보(사용 가능한 서버 목록, 상태, 로컬 시계 및 소스의 오프셋)를 표시하려면 -v 와 함께 다음 명령을 실행하세요. 플래그는 각 열에 대한 설명을 표시합니다.

chronyc sources
OR
chronyc sources -v

이전 명령과 관련하여 현재 chronyd에서 검사 중인 각 소스에 대한 기타 유용한 정보(예: 드리프트 속도 및 오프셋 추정 프로세스)를 표시하려면 sourcestats 명령을 사용하세요. .

chronyc sourcestats
OR
chronyc sourcestats -v

chrony 추적을 확인하려면 다음 명령을 실행하세요.

chronyc tracking

이 명령의 출력에서 참조 ID는 사용 가능한 모든 서버 중에서 컴퓨터가 현재 동기화되는 서버의 이름(또는 IP 주소)(사용 가능한 경우)을 지정합니다.

Linux에서 Chrony 시간 소스 구성

기본 chrony 구성 파일은 /etc/chrony.conf(CentOS/RHEL/Fedora) 또는 /etc/chrony에 있습니다. /chrony.conf(Ubuntu/Debian).

클라우드에 Linux OS를 설치할 때 시스템에는 설치 프로세스 중에 추가된 일부 기본 서버 또는 서버 풀이 있어야 합니다. 기본 서버를 추가하거나 변경하려면 편집할 구성 파일을 엽니다.

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

표시된 대로 server 지시문을 사용하여 여러 서버를 추가할 수 있습니다.

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

또는 대부분의 경우 ntppool.org를 사용하여 NTP 서버를 찾는 것이 가장 좋습니다. 이를 통해 시스템은 귀하에게 가장 가까운 사용 가능한 서버를 찾으려고 시도할 수 있습니다. 풀을 추가하려면 pool 지시어를 사용하세요.

pool 0.pool.ntp.org burst

파일에서 구성할 수 있는 다른 옵션이 많이 있습니다. 변경 후 chrony 서비스를 다시 시작합니다.

sudo systemctl restart chrony		
OR
systemctl restart chronyd

chronyd가 쿼리하는 현재 시간 소스에 대한 정보를 표시하려면 다음 명령을 한 번 더 실행하세요.

chronyc sources

chrony 추적 상태를 확인하려면 다음 명령을 실행하세요.

chronyc tracking

시스템에 현재 시간을 표시하려면 시스템 시계가 동기화되었는지와 NTP가 실제로 활성화되어 있는지 확인하고 timedatectl 명령을 실행합니다.

timedatectl

이것으로 이 가이드를 마치겠습니다. 질문이 있으시면 아래 댓글 섹션을 통해 문의해 주세요. 자세한 내용은 RHEL 문서에서 chrony 제품군을 사용하여 NTP 구성하기 또는 Ubuntu 공식 블로그에서 chrony를 사용하여 NTP 구성하기를 참조하세요.