Programming/Linux

리눅스 서버 시간 확인 및 설정 방법 (linux timedatectl 명령어)

Jan92 2023. 3. 30. 00:32

linux timedatectl 명령어를 통한 리눅스 서버 시간 확인 및 설정

linux server time setting

리눅스 서버에서 시스템 시간 및 해당 설정을 확인하고 변경해야 할 일이 있어 찾아보며 정리한 내용입니다.

 

linux에서는 timedatectl 명령을 사용하여 현재 시간, 날짜 및 시간대(timezone) 설정을 확인 및 변경할 수 있는데요.

아래 내용을 통해 사용되는 명령어들에 대해서 살펴보겠습니다.

 

(timedatectl 명령어는 CentOS 7부터 사용할 수 있습니다.)

 


1. 서버 시간 및 설정 확인

timedatectl

# timedatectl
# timedatectl status

 

timedatectl 또는 timedatectl status 명령어를 통해 시스템에 설정된 시간 및 시간 설정을 확인할 수 있습니다.

 

여기서 Local time의 경우 현재 설정된 지역 시간이 표시되는데요. Universal time의 경우 협정 세계시가 표시되고, RTC time은 하드웨어 시계가 표시됩니다. (CMOS 시계 또는 BIOS 시계)

Time zone은 서버에 지정된 국가가 표시되며, System clock synchronized는 시스템 시간 동기화 여부를 나타냅니다.

 

 

2. 날짜 및 시간 설정

timedatectl set-time

날짜와 시간 모두 설정
# timedatectl set-time "2023-03-30 12:00:00"

날짜만 설정
# timedatectl set-time "2023-03-30"

시간만 설정
# timedatectl set-time "12:00:00"

원하는 시간 및 날짜를 설정하고 싶을 때는 set-time 명령어를 통해 설정할 수 있는데요.

 

이때 'Failed to set time: Automatic time synchronization is enabled'라는 메시지가 나오는 경우가 있습니다.

이유는 NTP(Network Time Protocol)을 사용한 자동 시간 동기화 설정 때문인데요.

아래 set-ntp 명령어를 통해 자동 시간 동기화 설정을 해지해주면 날짜 및 시간 설정을 정상적으로 진행할 수 있습니다.

 

 

3. 자동 시간 동기화 설정(NTP)

설정
# timedatectl set-ntp yes

설정 안함
# timedatectl set-ntp no

NTP는 Network Time Protocol의 약자이며, ntp를 사용하면 외부에 있는 타임 서버의 시간을 가져와서 자동으로 동기화할 수 있습니다.

설정과 해지는 위 set-ntp 명령어를 통해 실행할 수 있습니다.

 

 

4. timezone 확인 및 설정

아시아/서울 타임존 설정
# timedatectl set-timezone Asia/Seoul

UTC 타임존 설정
# timedatectl set-timezone UTC

직접 시간 및 날짜를 입력하는 것보다 timezone 설정을 변경하는 경우가 사용되는 빈도가 높을 것 같은데요.

타임존 설정의 경우 set-timezone 명령어를 통해 적용할 수 있습니다.

 

전체 timezone 조회
# timedatectl list-timezones

grep을 통한 일부 timezone 조회
# timedatectl list-timezones | grep Asia

타임존 조회는 list-timezones 명령어를 통해 실행할 수 있는데요.

전체 리스트를 조회할 경우 데이터가 많기 때문에 아래 grep 명령어를 통해 일부만 검색하는 방법도 있습니다.

 

 

 

< 참고 자료 >

https://server-talk.tistory.com/423