Rzuć okiem na ten post na blogu: Jak: 2 metody zmiany strefy czasowej w systemie Linux .
Distros Red Hat
Jeśli korzystasz z dystrybucji takiej jak Red Hat, to twoje podejście do kopiowania pliku byłoby w większości dopuszczalne.
UWAGA: Jeśli szukasz rozwiązania agresywnego, działa to również na Debianie, chociaż poniżej są prostsze podejścia, jeśli potrzebujesz tylko maszyn Debiana.
$ ls /usr/share/zoneinfo/
Africa/ CET Etc/ Hongkong Kwajalein Pacific/ ROK zone.tab
America/ Chile/ Europe/ HST Libya Poland Singapore Zulu
Antarctica/ CST6CDT GB Iceland MET Portugal Turkey
Arctic/ Cuba GB-Eire Indian/ Mexico/ posix/ UCT
Asia/ EET GMT Iran MST posixrules Universal
Atlantic/ Egypt GMT0 iso3166.tab MST7MDT PRC US/
Australia/ Eire GMT-0 Israel Navajo PST8PDT UTC
Brazil/ EST GMT+0 Jamaica NZ right/ WET
Canada/ EST5EDT Greenwich Japan NZ-CHAT ROC W-SU
Zalecałbym jednak link do niego zamiast kopiowania.
$ sudo unlink /etc/localtime
$ sudo ln -s /usr/share/zoneinfo/Etc/GMT+6 /etc/localtime
Teraz data pokazuje inną strefę czasową:
$ date -u
Thu Jan 23 05:40:31 UTC 2014
$ date
Wed Jan 22 23:40:38 GMT+6 2014
Dystrybucje Ubuntu / Debian
Aby zmienić strefę czasową w jednej z tych dystrybucji, możesz użyć tego polecenia:
$ sudo dpkg-reconfigure tzdata
$ sudo dpkg-reconfigure tzdata
Current default time zone: 'Etc/GMT-6'
Local time is now: Thu Jan 23 11:52:16 GMT-6 2014.
Universal Time is now: Thu Jan 23 05:52:16 UTC 2014.
Teraz, kiedy to sprawdzimy:
$ date -u
Thu Jan 23 05:53:32 UTC 2014
$ date
Thu Jan 23 11:53:33 GMT-6 2014
UWAGA: W Ubuntu 14.04 i nowszych dostępna jest również ta opcja za pomocą jednego polecenia (źródło: Zapytaj Ubuntu - ustawianie strefy czasowej z terminala ):
$ sudo timedatectl set-timezone Etc/GMT-6
O użyciu „Etc / GMT + 6”
fragment odpowiedzi @ MattJohnson na SO
Podobne strefy Etc/GMT+6
są celowo odwracane w celu zapewnienia zgodności wstecznej ze standardami POSIX. Zobacz komentarze w tym pliku .
Prawie nigdy nie powinieneś używać tych stref. Zamiast tego powinieneś używać w pełni nazwanej strefy czasowej, takiej jak America/New_York
lub innej Europe/London
odpowiedniej dla Twojej lokalizacji. Zobacz listę tutaj .
echo $TZ
tworzy coś oprócz pustej linii)? Lepszym pomysłem może być utworzenie dowiązania symbolicznego/etc/localtime
zamiast kopiowania rzeczywistego pliku (w ten sposób będziesz bezpieczny, na wypadek, gdyby dane zoneinfo kiedykolwiek się zmieniły, co najprawdopodobniej nigdy nie zmieni).