Понятно, что операция установки временной зоны (таймзоны) – общая операция для многих систем, основанных на GNU/Linux. Однако, в разных дистрибутивах это делается по-разному.
Установка часового пояса в Debian / Ubuntu / Linux Mint
Когда-то для настройки временных зон в дистрибутивах, основанных
на Debian использовалась утилита tzconfig
. Однако, в Debian традиционно
настройки окружения делались через команду dpkg-reconfigure
–
вот и появилась такая возможность, а старую команду упразднили.
Так что запустим перенастройку пакета tzdata
:
sudo dpkg-reconfigure tzdata
Выбрав регион и город, мы установим нашу локальную временную зону.
Также специализированные команды для настройки времени есть и под другие дистрибутивы. К примеру, столь же популярные RedHat, Fedora и CentOS имеют свои утилиты:
- Redhat:
redhat-config-date
- CentOS/Fedora:
system-config-date
Установка временной зоны с помощью tzselect
Утилита, созданная специально для выбора временной зоны, как не трудно
догадаться, tzselect
– это Time Zone select. Доступна во многих
операционных системах на базе ядра Linux, а также и за пределами Linux,
например, во FreeBSD.
У tzselect
также довольно простой, но уже не псевдо-графический,
а чисто консольный интерфейс с интерактивным режимом ввода.
Также выбирается регион, страна и город, после чего настраивается часовой
пояс.
# tzselect
Please identify a location so that time zone rules can be set correctly.
Please select a continent or ocean.
1) Africa
2) Americas
3) Antarctica
4) Arctic Ocean
5) Asia
6) Atlantic Ocean
7) Australia
8) Europe
9) Indian Ocean
10) Pacific Ocean
11) none - I want to specify the time zone using the Posix TZ format.
#? 8
Please select a country.
1) Aaland Islands 18) Greece 35) Norway
2) Albania 19) Guernsey 36) Poland
3) Andorra 20) Hungary 37) Portugal
4) Austria 21) Ireland 38) Romania
5) Belarus 22) Isle of Man 39) Russia
6) Belgium 23) Italy 40) San Marino
7) Bosnia & Herzegovina 24) Jersey 41) Serbia
8) Britain (UK) 25) Latvia 42) Slovakia
9) Bulgaria 26) Liechtenstein 43) Slovenia
10) Croatia 27) Lithuania 44) Spain
11) Czech Republic 28) Luxembourg 45) Sweden
12) Denmark 29) Macedonia 46) Switzerland
13) Estonia 30) Malta 47) Turkey
14) Finland 31) Moldova 48) Ukraine
15) France 32) Monaco 49) Vatican City
16) Germany 33) Montenegro
17) Gibraltar 34) Netherlands
#? 39
Please select one of the following time zone regions.
1) Moscow-01 - Kaliningrad
2) Moscow+00 - west Russia
3) Moscow+00 - Crimea
4) Moscow+00 - Caspian Sea
5) Moscow+00 (Moscow+01 after 2014-10-26) - Samara, Udmurtia
6) Moscow+02 - Urals
7) Moscow+03 - west Siberia
8) Moscow+03 - Novosibirsk
9) Moscow+03 (Moscow+04 after 2014-10-26) - Kemerovo
10) Moscow+04 - Yenisei River
11) Moscow+05 - Lake Baikal
12) Moscow+06 (Moscow+05 after 2014-10-26) - Zabaykalsky
13) Moscow+06 - Lena River
14) Moscow+06 - Tomponsky, Ust-Maysky
15) Moscow+07 - Amur River
16) Moscow+07 - Sakhalin Island
17) Moscow+07 - Oymyakonsky
18) Moscow+08 (Moscow+07 after 2014-10-26) - Magadan
19) Moscow+08 - E Sakha, N Kuril Is
20) Moscow+08 (Moscow+09 after 2014-10-26) - Kamchatka
21) Moscow+08 (Moscow+09 after 2014-10-26) - Bering Sea
#? 2
The following information has been given:
Russia
Moscow+00 - west Russia
Therefore TZ='Europe/Moscow' will be used.
Local time is now: Mon Oct 27 12:26:20 MSK 2014.
Universal Time is now: Mon Oct 27 09:26:20 UTC 2014.
Is the above information OK?
1) Yes
2) No
#? 1
You can make this change permanent for yourself by appending the line
TZ='Europe/Moscow'; 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:
Europe/Moscow
К примеру, только что мы выбрали временную зону Москвы.
Установка временной зоны прямым изменением файлов
Так как в Unix "всё есть файл", то и изменение времени мы также можем
произвести через файлы. За время отвечают 2 файла: /etc/timezone
и
/etc/localtime
.
Для начала запишем название часового пояса в /etc/timezone
:
echo Europe/Moscow > /etc/timezone
Однако, не только названием они отличаются. Так, например, могут меняться как сами зоны, так ещё перевод на зимнее/летнее время может изменить отличие от "Гринвича", например, на час.
Так что установим и файл, отвечающий за часовой пояс:
ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime
Так мы можем установить временную зону и без различных утилит.