몇 주 전, 터키 에너지 및 천연 자원부는 DST가 영구적이며 GMT + 3이 미국에서 영원히 사용될 것이라고 발표했다.
현재 Linux 서버의 시간대는 Europe / Istanbul로 설정되어 있습니다 . 그러나 tzdata 업데이트는 아직 릴리스되지 않았습니다.
업데이트가 없기 때문에 2016 년 10 월 30 일에 zoneinfo 파일 (/ usr / share / zoneinfo / Europe / Istanbul)에 선언 된대로 시간대가 GMT + 3에서 GMT + 2로 자동 변경됩니다.
2016 년 세부 정보는 다음과 같습니다.
# zdump -v /usr/share/zoneinfo/Europe/Istanbul | grep 2016
/usr/share/zoneinfo/Europe/Istanbul Sun Mar 27 00:59:59 2016 UT = Sun Mar 27 02:59:59 2016 EET isdst=0 gmtoff=7200
/usr/share/zoneinfo/Europe/Istanbul Sun Mar 27 01:00:00 2016 UT = Sun Mar 27 04:00:00 2016 EEST isdst=1 gmtoff=10800
/usr/share/zoneinfo/Europe/Istanbul Sun Oct 30 00:59:59 2016 UT = Sun Oct 30 03:59:59 2016 EEST isdst=1 gmtoff=10800
/usr/share/zoneinfo/Europe/Istanbul Sun Oct 30 01:00:00 2016 UT = Sun Oct 30 03:00:00 2016 EET isdst=0 gmtoff=7200
(업데이트가없는 경우) 이러한 상황이 발생하는 것을 막기 위해 서버 시간대를 고정 GMT + 3으로 설정하는 백업 계획을 세우기로 결정했습니다 . 고정 GMT + 3 이 설정 되면 이상한 동작에 직면하게 됩니다.
시간대를 변경하기 전에 서버에서 현지 시간과 UTC 시간을 확인하십시오.
# date
Wed Sep 21 11:13:11 EEST 2016
# date -u
Wed Sep 21 08:13:15 UTC 2016
시간대를 다음과 같이 고정 GMT + 3 으로 설정했습니다 .
# rm -f /etc/localtime
# ln -s /usr/share/zoneinfo/Etc/GMT+3 /etc/localtime
변경 후 서버에서 현지 시간과 UTC 시간을 확인하십시오. GMT + 3 시간 3 시간이며 이전 이를 3 시간이어야 UTC보다 나중에 UTC보다 상기 출력에서 볼 수 있듯이.
# date
Wed Sep 21 05:14:24 GMT+3 2016
# date -u
Wed Sep 21 08:14:26 UTC 2016
현지 시간이나 UTC 시간을 재설정하더라도 변경되지 않습니다.
# date -s "21 Sep 2016 11:16:00"
Wed Sep 21 11:16:00 GMT+3 2016
# date
Wed Sep 21 11:16:02 GMT+3 2016
# date -u
Wed Sep 21 14:16:05 UTC 2016
# date -u -s "21 Sep 2016 11:16:00"
Wed Sep 21 11:16:00 UTC 2016
# date
Wed Sep 21 08:16:01 GMT+3 2016
# date -u
Wed Sep 21 11:16:02 UTC 2016
오프셋이 뒤로 보이는 이유는 무엇입니까?
답변
업데이트 # 1 : 표준 운영 체제에서 여러 운영 체제에 대한 표준 시간대 데이터베이스 업데이트가 최근에 릴리스되었습니다. 버전 tzdata2016g
에는 언급 된 변경에 대한 설정 이 포함되어 있습니다.
어떤 시점에서이 질문은 superuser.com 에서 질문 한 내용 과 중복 됩니다.
명확한 대답은
“POSIX 표준과의 하위 호환성을 위해 Etc / GMT + 6과 같은 영역이 의도적으로 반전되었습니다”
그러나 Linux 시스템에서 DST 변경을 비활성화하려는 사람들을 돕기 위해 삭제해서는 안된다고 생각합니다.
DST 변경을 비활성화하려면/etc/localtime
파일을 폴더 아래에있는 zoneinfo 파일 중 하나에 연결하십시오./usr/share/zoneinfo/Etc/
명령 예 :
# ln -s /usr/share/zoneinfo/Etc/GMT+3 /etc/localtime
가장 적합한 zoneinfo 파일을 선택하려면 대상 GMT의 부호를 바꾸 십시오.
즉, GMT + 3 시간대 (UTC보다 3 시간 빠름)를 설정하려면 / usr / share / zoneinfo / Etc / GMT-3을 사용해야합니다.
답변
어느 시점에서 TZ 테이블에 대한 새로운 개정판이 릴리스되어 모든 Linux 배포판에 대한 업데이트를 사용할 수 있습니다. 흠 ….이 문제에 대한 발표가 발표 된 직후 업데이트 된 시간대 표를 사용할 수 있다고 맹세 할 수있었습니다. 상황에 맞는 새로운 TZ 지정자가있을 수 있습니다.