1. 개요
- 리눅스 서버에서는 시스템 시간(OS 시간) 과 하드웨어 시간(RTC, Real-Time Clock) 을 모두 관리할 수 있습니다.
- 운영체제의 시간과 하드웨어 시간이 다르면 로그 기록, 클러스터 동기화, 인증 문제 등이 발생할 수 있으므로 두 시간을 일치시켜 주는 것이 중요합니다.
- 이번 글에서는
date
와hwclock
명령어를 활용하여 시스템 시간과 하드웨어 시간 확인 및 동기화 방법을 정리합니다.
2. 버전
- Rocky Linux 9.5
3. 설명
3-1. 하드웨어 시간 (RTC, Real-Time Clock)
- 정의
- 하드웨어 시간은 메인보드에 내장된 배터리(CMOS 배터리) 를 통해 유지되는 시계입니다.
- 서버나 PC의 전원이 꺼져 있더라도 배터리 덕분에 시간이 계속 유지되며, BIOS/UEFI 환경에서 직접 확인하실 수 있습니다.
- 특징
- 전원이 꺼져 있어도 시간이 유지됩니다.
- BIOS/UEFI 단계에서 직접 확인 및 설정이 가능합니다.
- 일반적으로 UTC(국제 표준시) 기준으로 맞추시는 것을 권장드립니다.
hwclock
명령어를 사용하여 확인 및 변경이 가능합니다.
3-2. 시스템 시간 (OS Time)
- 정의
- 시스템 시간은 운영체제가 실행될 때 메모리에 로드되어 동작하는 시계를 의미합니다.
- 서버가 부팅될 때 RTC 값을 불러와 초기화되며, 이후에는 운영체제가 자체적으로 시간을 관리합니다.
- 특징
- 운영체제에서 모든 애플리케이션, 로그, 프로세스가 참조하는 기준 시간이 됩니다.
- OS 부팅 시 RTC 값을 불러와 초기화되지만, 이후에는 RTC와 별개로 동작합니다.
date
명령어나timedatectl
명령어를 통해 확인 및 변경이 가능합니다.- NTP(Network Time Protocol) 동기화를 통해 네트워크 표준 시간과 맞추실 수 있습니다.
4. 시간 확인
4-1. 하드웨어(RTC) 시간 확인
# hwclock
출력 예시:
2025-09-27 08:09:45.933274+09:00
4-2. 시스템(OS) 시간 확인
# date
출력 예시:
Sat Sep 27 08:09:57 AM KST 2025
5. 시스템(OS) 시간
5-1. 시스템(OS) 시간 변경
# date -s "2025-09-27 12:00:00"
5-2. 시스템(OS) 시간 변경 확인
# date
출력 예시:
Sat Sep 27 12:00:01 PM KST 2025
5-3. 시스템(OS) 시간 → 하드웨어(RTC) 시간 동기화
# hwclock --systohc
5-4. 시스템(OS) 시간 → 하드웨어(RTC) 시간 동기화 확인
# hwclock
출력 예시:
2025-09-27 12:01:15.596591+09:00
6. 하드웨어(RTC) 시간
6-1. 하드웨어(RTC) 시간 변경
# hwclock --set --date="2025-09-27 13:00:00"
6-2. 하드웨어(RTC) 시간 변경 확인
# hwclock
출력 예시:
2025-09-27 13:00:04.284836+09:00
6-3. 하드웨어(RTC) 시간 → 시스템(OS) 시간 동기화
# hwclock --hctosys
6-4. 하드웨어(RTC) 시간 → 시스템(OS) 시간 동기화 확인
# date
출력 예시:
Sat Sep 27 01:00:20 PM KST 2025