Часовой пояс — это географический регион с одинаковым стандартным временем. Обычно часовой пояс задается во время установки операционной системы, но его можно легко изменить позже.
Использование правильного часового пояса необходимо для многих системных задач и процессов. Например, демон cron использует часовой пояс системы для выполнения заданий cron. Часовой пояс также используется для отметок времени журналов.
В этом руководстве описаны действия, необходимые для установки или изменения часового пояса в Linux.
Содержание
Проверка текущего часового пояса
timedatectl
— это timedatectl
программа командной строки, которая позволяет просматривать и изменять системное время и дату. Он доступен во всех современных системах Linux на базе systemd.
Чтобы просмотреть текущий часовой пояс, вызовите команду timedatectl
без каких-либо параметров или аргументов:
timedatectl
Local time: Tue 2019-12-03 16:30:44 UTC
Universal time: Tue 2019-12-03 16:30:44 UTC
RTC time: Tue 2019-12-03 16:30:44
Time zone: Etc/UTC (UTC, +0000)
System clock synchronized: no
systemd-timesyncd.service active: yes
RTC in local TZ: no
Приведенный выше вывод показывает, что часовой пояс системы установлен на UTC.
Системный часовой пояс настраивается путем символьной привязки файла /etc/localtime
к идентификатору двоичного часового пояса в каталоге /usr/share/zoneinfo
.
Другой способ проверить часовой пояс — просмотреть путь, на который указывает символическая ссылка, с помощью команды ls
:
ls -l /etc/localtime
lrwxrwxrwx 1 root root 27 Dec 3 16:29 /etc/localtime -> /usr/share/zoneinfo/Etc/UTC
Изменение часового пояса в Linux
Перед изменением часового пояса вам нужно узнать длинное название часового пояса, который вы хотите использовать. В соглашении об именах часовых поясов обычно используется формат «Регион / Город».
Чтобы просмотреть все доступные часовые пояса, используйте команду timedatectl
или перечислите файлы в каталоге /usr/share/zoneinfo
:
timedatectl list-timezones
...
America/Montserrat
America/Nassau
America/New_York
America/Nipigon
America/Nome
America/Noronha
...
Как только вы определите, какой часовой пояс соответствует вашему местоположению, выполните следующую команду от имени пользователя root или sudo :
sudo timedatectl set-timezone <your_time_zone>
Например, чтобы изменить часовой пояс системы на America/New_York
, введите:
sudo timedatectl set-timezone America/New_York
Чтобы проверить изменение, снова вызовите команду timedatectl
:
timedatectl
Local time: Tue 2019-12-03 13:55:09 EST
Universal time: Tue 2019-12-03 18:55:09 UTC
RTC time: Tue 2019-12-03 18:02:16
Time zone: America/New_York (EST, -0500)
System clock synchronized: no
systemd-timesyncd.service active: yes
RTC in local TZ: no
Миссия выполнена! Вы успешно изменили часовой пояс вашей системы.
Изменение часового пояса путем создания символической ссылки
Если вы используете более старый дистрибутив Linux и утилита timedatectl
отсутствует в вашей системе, вы можете изменить часовой пояс, установив символическую ссылку /etc/localtime
на часовой пояс в каталоге /usr/share/zoneinfo
.
Удалить текущую символическую ссылку или файл:
sudo rm -rf /etc/localtime
Определите часовой пояс, который вы хотите настроить, и создайте символическую ссылку :
sudo ln -s /usr/share/zoneinfo/America/New_York /etc/localtime
Проверьте это, перечислив файл /etc/localtime
или вызвав команду date
:
date
Выходные данные включают часовой пояс, в данном примере это «EST».
Tue Dec 3 14:10:54 EST 2019
Выводы
Чтобы изменить часовой пояс в системах Linux, используйте команду sudo timedatectl set-timezone
за которой следует длинное имя часового пояса, который вы хотите установить.
Не стесняйтесь оставлять комментарии, если у вас есть вопросы.
Отличная статья, все расписано понятно и по существу. Очень помогла!