
Часовой пояс — это географический регион, в котором действует единое стандартное время. Обычно часовой пояс устанавливается во время установки операционной системы, но его можно легко изменить позже.
Использование правильного часового пояса крайне важно для многих системных задач и процессов. Например, демон cron использует системный часовой пояс для выполнения заданий cron. Этот часовой пояс также используется для временных меток журналов.
В этом руководстве рассматриваются шаги, необходимые для установки или изменения часового пояса в Linux.
Проверка текущего номера часового
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
Например, чтобы изменить часовой пояс системы на 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 за которой укажите длинное имя часового пояса, который вы хотите установить.
Если у вас возникнут какие-либо вопросы, не стесняйтесь оставлять комментарии.
Связанные руководства