우분투와 윈도우 듀얼부팅 시, 윈도우 측 시계가 UTC로 표시된다면?
윈도우 11과 우분투 24.04 듀얼부팅 시 윈도우에서 발생하는 시간 오류 문제
최근 우분투 24.04 LTS 버전을 설치해 윈도우 11과 듀얼부팅으로 사용하고 있다. 일차적인 이유는 업무상 필요성이고, 추가로 NTFS 및 ReFS 파일 시스템의 느린 성능과 윈도우 11의 전반적인 느린 동작 등 여러 불만 사항을 해소하기 위함이다.
물론 우분투만 사용할 수 없으므로, HDR 콘텐츠 감상이나 게임 등 휴식을 위해 윈도우도 사용한다. 그런데 듀얼부팅 환경에서 한 가지 이상한 증상이 나타났다.
윈도우에서 단독 부팅하거나, 윈도우 → 우분투, 우분투 → 우분투로 부팅할 때는 시스템 시간이 정상적으로 표시되지만, 우분투로 부팅한 후 윈도우로 재부팅하면 하드웨어 시계가 UTC 기준으로 설정되어 있어 윈도우에서 시간이 잘못 표시된다.
우분투 사용 후 윈도우에서 시간이 잘못 표시되는 이유
이 문제의 원인은 우분투를 비롯한 대부분의 리눅스 배포판이 기본적으로 하드웨어 시계를 UTC 기준으로 관리하는 반면, 윈도우는 하드웨어 시계를 **로컬 시간(지역 시간)**으로 관리하기 때문이다.
- 우분투 측
우분투는 부팅 시 인터넷 시간과 동기화하면서 하드웨어 시계를 UTC 기준으로 저장한다. 그리고 시스템에서는 KST(서울, UTC+9)를 적용해 사용자에게 올바른 지역 시각으로 표시한다. - 윈도우 측
윈도우는 하드웨어 시계를 로컬 시간으로 인식하여 그대로 표시한다. 따라서 우분투에서 저장한 UTC 값이 그대로 적용되므로, 실제 시간보다 9시간 늦은 시각이 표시되는 것이다.
해결 방안
문제 해결은 간단하다. 우분투에서 하드웨어 시계를 로컬 시간으로 관리하도록 설정하면 된다.
터미널에서 아래 명령어를 실행하여 우분투가 하드웨어 시계를 로컬 시간으로 해석하도록 변경한다.
timedatectl set-local-rtc 1 --adjust-system-clock
설정이 제대로 적용되었는지 확인하려면 다음 명령어를 입력한다.
timedatectl
출력 결과에
RTC in local TZ: yes
가 표시되면 정상적으로 적용된 것이다.
다시 UTC 기준으로 복원하려면
특수한 상황에서 다시 하드웨어 시계를 UTC 기준으로 관리해야 할 필요가 있다면, 아래 명령어를 실행하면 된다.
timedatectl set-local-rtc 0 --adjust-system-clock
댓글
댓글 쓰기