일반적으로 ntp등을 이용하여 시간 싱크를 맞출때 rdate 명령어를 주로 사용하는 경우가 많은데
rocky linux에서는 rdate를 제공하지 않는다.
기본적으로 설치된 timezone을 변경하기 위해서는 timedatectl을 사용하게된다.
1. rocky linux timezone 변경 (host)
host에서는 직접 변경할 수 있다.
먼저 현재 설정을 확인하고 set-timezone을 이용하여 설정한다.
[root@localhost ~]# timedatectl
Local time: 수 2024-04-03 00:33:15 EDT
Universal time: 수 2024-04-03 04:33:15 UTC
RTC time: 수 2024-04-03 04:33:15
Time zone: America/New_York (EDT, -0400)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
다음과 같이 timezone을 변경한다.
[root@localhost ~]# timedatectl set-timezone Asia/Seoul
[root@localhost ~]# timedatectl
Local time: 수 2024-04-03 13:33:59 KST
Universal time: 수 2024-04-03 04:33:59 UTC
RTC time: 수 2024-04-03 04:33:59
Time zone: Asia/Seoul (KST, +0900)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
2. docker 내부에서 시간 변경
rockylinux docker에는 timedatectl을 수행하면 에러가 난다
System has not been booted with systemd as init system (PID 1). Can't operate.
Failed to create bus connection: Host is down
Docker 컨테이너에서 timedatectl 명령어를 사용하려고 할 때 나타나는 에러는 컨테이너가 전체 시스템을 제어하는 systemd를 사용하지 않기 때문이다.
Docker에서 시간대를 설정하려면 컨테이너가 호스트의 시간 설정을 상속받는 것이 일반적이지만 컨테이너 내부에서 시간대를 명시적으로 설정하고 싶다면, 시간대 파일을 컨테이너 내부로 복사하는 방법을 사용할 수 있다
(1) 컨테이너 생성 시 시간대 변경하기
컨테이너를 생성할 때 timezone 파일을 컨테이너의 /etc/localtime으로 마운트하는 방법 으로
docker run 시 -v /usr/share/zoneinfo/Asia/Seoul:/etc/localtime:ro 를 추가하는 방식이다.
(2) 이미 실행 중인 컨테이너 내부에서 시간대를 변경하기
timezone 파일을 직접 복사하는 방법이다
[root@Rocky8Docker logs]#cp -rf /usr/share/zoneinfo/Asia/Seoul /etc/localtime
cp: overwrite '/etc/localtime'? y
[root@Rocky8Docker logs]#date
2024. 04. 03. (수) 13:39:00 KST
'IT > 리눅스' 카테고리의 다른 글
Ubuntu에서 방화벽 설정하기(우분투 ufw, IP범위, 포트범위) (0) | 2024.06.05 |
---|---|
파일 시스템이란? NTFS와 exFAT 특징과 차이점 (0) | 2024.04.17 |
Rocky linux 시스템의 현재 접속 정보와 작업 정보 알아내기(who, w, last, netstat, ss) (0) | 2024.03.22 |
nvidia GPU power limit 설정하기 (Unable to determine the device handle for GPU, Unknown Error) (0) | 2024.02.27 |
cpu, ram 사용량 및 gpu, gpu ram 사용량 실시간 확인하기 (0) | 2024.02.26 |