..
Ubuntu Set Timezone
문제
로컬에서는 잘 동작하던 미세먼지 조회 API가 서버에서는 잘 동작하지 않았다.
원인
미세먼지를 조회해오는 외부 API의 요청 결과를 확인하니 아래와 같았다.
{"response":{"header":{"resultCode":"99","resultMsg":"해당 데이터 파일이 없습니다."}}}
이유는 미세먼지를 조회해오는 외부 API의 요청을 보낼때 시간을 같이 보내는데 서버 시간이 UTC 시간대를 사용하고 있었기 때문에 발생한 문제였다.
$ date
Thu Apr 15 01:49:49 UTC 2021
해결
대한민국 시간대(KST)를 사용하도록 설정한다.
시간대 변경 (tzselect)
$ tzselect
tzselect
명령어가 동작하지 않는다면, 아래 명령어로 설치한다.
$ apt install tzdata
tzselect
명령어를 입력하면 아래와 같은 화면이 나타난다.
4를 입력한다.
Please identify a location so that time zone rules can be set correctly.
Please select a continent, ocean, "coord", or "TZ".
1) Africa
2) Americas
3) Antarctica
4) Asia
5) Atlantic Ocean
6) Australia
7) Europe
8) Indian Ocean
9) Pacific Ocean
10) coord - I want to use geographical coordinates.
11) TZ - I want to specify the time zone using the Posix TZ format.
#? 4
23을 입력한다.
Please select a country whose clocks agree with yours.
1) Afghanistan 18) Israel 35) Palestine
2) Armenia 19) Japan 36) Philippines
3) Azerbaijan 20) Jordan 37) Qatar
4) Bahrain 21) Kazakhstan 38) Russia
5) Bangladesh 22) Korea (North) 39) Saudi Arabia
6) Bhutan 23) Korea (South) 40) Singapore
7) Brunei 24) Kuwait 41) Sri Lanka
8) Cambodia 25) Kyrgyzstan 42) Syria
9) China 26) Laos 43) Taiwan
10) Cyprus 27) Lebanon 44) Tajikistan
11) East Timor 28) Macau 45) Thailand
12) Georgia 29) Malaysia 46) Turkmenistan
13) Hong Kong 30) Mongolia 47) United Arab Emirates
14) India 31) Myanmar (Burma) 48) Uzbekistan
15) Indonesia 32) Nepal 49) Vietnam
16) Iran 33) Oman 50) Yemen
17) Iraq 34) Pakistan
#? 23
1을 입력한다.
The following information has been given:
Korea (South)
Therefore TZ='Asia/Seoul' will be used.
Selected time is now: Thu Apr 15 11:15:32 KST 2021.
Universal Time is now: Thu Apr 15 02:15:32 UTC 2021.
Is the above information OK?
1) Yes
2) No
#? 1
아래와 같은 메시지가 나타난다면 설정이 완료되지 않은 것이다. 홈 디렉터리에 설정 파일에서 직접 시간대를 변경해야한다.
You can make this change permanent for yourself by appending the line
TZ='Asia/Seoul'; export TZ
to the file '.profile' in your home directory; then log out and log in again.
Here is that TZ value again, this time on standard output so that you
can use the /usr/bin/tzselect command in shell scripts:
Asia/Seoul
시간대 변경 (.profile)
cd -
명령어를 통해 홈 디렉터리로 이동한다. pwd
명령어로 현재 위치를 확인한다.
$ cd -
$ pwd
/home/ubuntu
vi 편집기를 열어 직접 입력한다.
$ vi /home/ubuntu/.profile
TZ-'ASIA/SEOUL'; export TZ