서버의 시간이 현재 실제 시간과 맞지 않을 때, NTP 서버*를 이용해 시간을 동기화하는 chrony
데몬의 설정 방법을 안내합니다.
* NTP 서버: Network Time Protocol을 사용하여 네트워크상 컴퓨터들의 시간을 동기화하는 서버입니다.
1. 서버 시간 확인하기
먼저 date
명령어를 터미널에 입력하여 현재 서버에 설정된 시간을 확인하고 실제 시간과 얼마나 차이가 나는지 파악합니다.
date
2. Chrony 설치 및 실행
chrony 패키지를 설치하고 시스템 부팅 시 자동으로 실행되도록 설정합니다.
2.1 패키지 설치
sudo apt-get install -y chrony
-y
옵션은 설치 과정 중 나타나는 모든 질의에 ‘Yes’로 자동 응답합니다.
2.2 서비스 활성화 및 시작
시스템 부팅 시 자동 시작 설정
sudo systemctl enable chronyd
chrony 서비스 시작
sudo systemctl start chronyd
서비스 상태 확인
sudo systemctl status chronyd
status 확인 후, q
키를 눌러 빠져나올 수 있습니다.
3. 서버 시간 동기화 설정
chrony.conf
파일을 수정하여 신뢰할 수 있는 NTP 서버*를 등록합니다.
3.1 설정 파일 열기
vi
나 nano
같은 터미널 편집기를 사용하여 sudo
권한으로 설정 파일을 엽니다.
sudo vi /etc/chrony/chrony.conf
💡 터미널 편집기가 익숙하지 않다면?
sudo chmod 666 /etc/chrony/chrony.conf
명령으로 파일에 쓰기 권한을 부여합니다.- VSCode 등 익숙한 편집기로 파일을 열어 수정한 뒤 저장합니다.
- 보안을 위해 반드시
sudo chmod 644 /etc/chrony/chrony.conf
명령으로 파일 권한을 원래대로 복구합니다.
3.2 시간 서버 목록 수정
파일 내에서 server
로 시작하는 기존 줄을 모두 삭제하거나 주석(#
) 처리하고, 아래의 추천 서버 목록을 추가합니다.
# 기존 server ... iburst 라인 삭제 후 아래 내용 추가
server time.google.com iburst
server time.apple.com iburst
server time.aws.com. iburst
server time.nist.gov iburst
3.3 서비스 재시작
설정 파일 수정이 완료되면 chrony
서비스를 재시작하여 변경사항을 적용합니다.
sudo systemctl restart chronyd
4. 동기화 상태 확인하기
마지막으로 chrony
가 시간 서버와 정상적으로 통신하며 동기화가 잘 이루어지는지 확인합니다.
4.1 동기화 추적
현재 시간 오차, 보정 속도, 참조 중인 시간 서버 등 전반적인 동기화 상태를 확인합니다.
sudo chronyc tracking
4.2 NTP 서버 상태 확인
연결된 NTP 서버 목록과 각 서버와의 지연, 오차 등을 상세히 볼 수 있습니다.
-v 는 verbose(자세한 정보 출력) 옵션입니다.
sudo chronyc sources -v

확인 후, 오차 시간이 0ns 로 출력되는데, 오차가 크다면, 아래 즉시 동기화를 실행해 줍니다.
4.3 즉시 동기화
서버 시간과 실제 시간의 차이가 매우 클 경우, 아래 명령어를 통해 즉시 강제로 동기화할 수 있습니다.
sudo chronyc makestep