리눅스 Timezone 설정하기

현재 서버 시간확인

$ date

리눅스를 설치할 때 timezone을 따로 설정하지 않으면 UTC 타임존으로 설치가 되고, date명령어로 현재 서버의 시간을 확인할 수 있다.


1. /etc/localtime 심볼릭 링크파일 수정

/usr/share/zoneinfo/에 여러 국가들의 정보가 존재하는데 바꾸고자 하는 지역을 /etc/localtime라는 이름으로 기존의 존재하는 심볼릭링크 파일을 수정해주면 됩니다.

$ sudo ln -sf /usr/share/zoneinfo/Asia/Seoul /etc/localtime


2. timedatectl

$ sudo timedatectl set-timezone 'Asia/Seoul'

timedatectl명령어를 이용하면 현재 timezone에 대한 정보를 확인할 수 있고 변경도 할 수 있다. 위의 명령어의 실제 동작 방식은 1번과 같이 /etc/localtime의 심볼릭링크를 수정하는 것과 같다.

$ timedatectl

#실행 모습
               Local time: Tue 2021-05-11 16:14:32 KST
           Universal time: Tue 2021-05-11 07:14:32 UTC
                 RTC time: Tue 2021-05-11 07:14:33
                Time zone: Asia/Seoul (KST, +0900)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no
항목 설명
Local time 현재 지역 시간
Universal time 협정 세계시(UTC)
RTC time 서버 하드웨어의 시간
Time zone 시간대
System clock synchronized NTP로 동기화 되었는지 여부
NTP service NTP 활성화 여부
RTC in local TZ RTC 시계를 시스템 시계와 동일하게 사용할지 여부

NTP : 네트워크로 연결되어 있는 컴퓨터들끼리 시간을 동기화 시키는데 사용되는 프로토콜 ( 국내에도 여러 타임서버가 존재하고 이를 이용해 시간을 동기화 한다.)


3. .profile에 time설정 값 추가

$ echo "TZ='Asia/Seoul';export TZ" >> .profile
$ source ~/.profile




Reference

https://zetawiki.com/wiki/%EB%A6%AC%EB%88%85%EC%8A%A4_KST_%EC%8B%9C%EA%B0%84%EB%8C%80_%EC%84%A4%EC%A0%95