[에스넷시스템 부트캠프] TIL Day17 - NTP, DNF
1. NTP (Network Time Protocol)
NTP(Network Time Protocol)는 네트워크를 통해 시스템의 시간을 정확하게 맞춰주는 프로토콜이다.
여러 시간 서버(Time Server)에서 제공하는 시각을 기준으로 오차를 조정한다.
⚠️ 시간 서버의 위치, 네트워크 지연 등에 따라 약간의 시간 차이가 발생할 수 있다.
1) iburst 옵션의 의미
NTP 설정 시 자주 등장하는 옵션 중 하나인 iburst는 초기 동기화 속도를 높이기 위한 설정이다.
- 기본 NTP 동기화는 서버 연결 시 첫 번째 응답이 오기까지 수 분이 걸릴 수 있음
- iburst를 사용하면, 초기 연결 시 8개의 요청을 빠르게 전송하여 보다 빠르게 시간 동기화가 이루어지도록 함
2) chrony
chrony는 NTP보다 더 정밀하고 빠르게 시간 동기화를 수행할 수 있는 도구다.
CentOS 7 이상에서는 기본 시간 동기화 도구로 chrony가 사용된다.
- 오프라인 상태에서의 보정 기능이 탁월
- VM, 클라우드, 불안정한 네트워크 환경에서도 안정적인 동작을 보임
명령어 | 설명 |
# chronyc tracking | 현재 시스템 시계 상태 및 시간 오차 정보 확인 |
# chronyc sources | 연결된 NTP 서버 목록 및 상태 요약 |
# chronyc sources -v | 서버별 지연 시간, 오차, 오프셋 등 자세한 정보 확인 |
# chronyc -a makestep | 현재 오차가 임계값 이상일 경우, 강제로 시간 보정 수행 |
2. 리눅스의 프로그램 설치 방법
리눅스에서 프로그램을 설치하는 방식은 여러 가지가 있으며, 목적과 환경에 따라 적절한 방법을 선택해야 한다.
설치 방식 3가지
- 디렉토리 압축형 설치
- 압축 해제 -> configure -> make -> install 과정
- 사용자의 의도대로 모든 프로그램 속성을 커스텀 가능
- 성공 여부가 불호가실함
- RPM (RedHat Package Manager)
- 이미 make 단계까지 다 된 상태(컴파일 완료)로 배포
- 설치가 간편하고 속도가 빠름
- 의존성 문제가 생길 수 있음
- YUM (Yellowdog Updator, Modified)
- RPM 기반 의존성 문제를 자동으로 해결해주는 패키지 관리자
- 필요한 패키지들을 자동으로 설치
- 의존성 관리에 용이
- 레포지토리 설정이 잘못되었거나 연결이 안되면 사용 불가
3. DNF
DNF(Dandified YUM)는 기존 yum의 문제점을 개선하여 등장한 차세대 리눅스 패키지 관리자입니다.
Red Hat 계열 배포판(RHEL, CentOS, Fedora 등)에서 기본 패키지 관리자 역할을 수행하며, yum과의 명령어 호환성도 유지합니다.
- Python 3 기반으로 개발되어 확장성과 유지보수가 용이
- YUM과 동일한 명령어 사용 가능 (대부분 yum 명령이 dnf로 대체됨)
- 의존성 해결 알고리즘 개선
- 더 빠른 성능, 낮은 메모리 사용량
- 플러그인 시스템이 정교해짐
- 패키지 설치시 사용되는 설정 파일은 반드시 .repo 확장자를 가져야 함
✍️ 하루 회고
NTP는 서버 간 시간을 정확히 맞추기 위한 프로토콜로, 단순히 현재 시간을 받아오는 것이 아니라 네트워크 지연을 계산해 보정까지 수행한다는 점이 인상 깊었다. 아주 옛날엔 보석으로 시간을 쟀다는 사실이 흥미로웠다.
리눅스 프로그램 설치 방법에 대해 배울 때 Red Hat, Yellow Dog 같은 이름을 접했는데, 처음엔 이름만 봐도 조금 낯설고 재미있게 느껴졌다. 마치 빨간 모자와 노란 강아지가 함께 리눅스 세계를 여행하는 듯한 인상이었달까. 하지만 각각의 이름에는 실제 유래와 의미가 담겨 있다는 점이 흥미로웠다. 단순한 별명이 아니라, 창립자의 상징이거나 특정 플랫폼을 위한 목적에서 비롯된 이름들이라는 걸 알고 나니 오히려 더 기억에 잘 남을 것 같다.