Меню

Часовой пояс для linux

Как установить или изменить часовой пояс в Linux

Часовой пояс — это географический регион с одинаковым стандартным временем. Обычно часовой пояс задается во время установки операционной системы, но его можно легко изменить позже.

Использование правильного часового пояса необходимо для многих системных задач и процессов. Например, демон cron использует часовой пояс системы для выполнения заданий cron. Часовой пояс также используется для отметок времени журналов.

В этом руководстве описаны действия, необходимые для установки или изменения часового пояса в Linux.

Проверка текущего часового пояса

timedatectl — это timedatectl программа командной строки, которая позволяет просматривать и изменять системное время и дату. Он доступен во всех современных системах Linux на базе systemd.

Чтобы просмотреть текущий часовой пояс, вызовите команду timedatectl без каких-либо параметров или аргументов:

Приведенный выше вывод показывает, что часовой пояс системы установлен на UTC.

Системный часовой пояс настраивается путем символьной привязки файла /etc/localtime к идентификатору двоичного часового пояса в каталоге /usr/share/zoneinfo .

Другой способ проверить часовой пояс — просмотреть путь, на который указывает символическая ссылка, с помощью команды ls :

Изменение часового пояса в Linux

Перед изменением часового пояса вам нужно узнать длинное название часового пояса, который вы хотите использовать. В соглашении об именах часовых поясов обычно используется формат «Регион / Город».

Чтобы просмотреть все доступные часовые пояса, используйте команду timedatectl или перечислите файлы в каталоге /usr/share/zoneinfo :

Как только вы определите, какой часовой пояс соответствует вашему местоположению, выполните следующую команду от имени пользователя root или sudo :

Например, чтобы изменить часовой пояс системы на America/New_York , введите:

Чтобы проверить изменение, снова вызовите команду timedatectl :

Миссия выполнена! Вы успешно изменили часовой пояс вашей системы.

Изменение часового пояса путем создания символической ссылки

Если вы используете более старый дистрибутив Linux и утилита timedatectl отсутствует в вашей системе, вы можете изменить часовой пояс, установив символическую ссылку /etc/localtime на часовой пояс в каталоге /usr/share/zoneinfo .

Определите часовой пояс, который вы хотите настроить, и создайте символическую ссылку :

Проверьте это, перечислив файл /etc/localtime или вызвав команду date :

Выходные данные включают часовой пояс, в данном примере это «EST».

Выводы

Чтобы изменить часовой пояс в системах Linux, используйте команду sudo timedatectl set-timezone за которой следует длинное имя часового пояса, который вы хотите установить.

Не стесняйтесь оставлять комментарии, если у вас есть вопросы.

Источник

Как установить или изменить часовой пояс в Ubuntu 20.04

Использование правильного часового пояса необходимо для многих системных задач и процессов. Например, демон cron использует часовой пояс системы для выполнения заданий cron, а отметки времени в файлах журнала основаны на часовом поясе той же системы.

В Ubuntu часовой пояс системы устанавливается во время установки, но его можно легко изменить позже.

В этой статье описывается, как установить или изменить часовой пояс в Ubuntu 20.04 с помощью командной строки или через графический интерфейс.

Подготовка

Только root или пользователь с привилегиями sudo может устанавливать или изменять часовой пояс системы.

Проверка текущего часового пояса

timedatectl — это timedatectl программа командной строки, которая позволяет просматривать и изменять системное время и дату. Он доступен во всех современных системах Linux на базе systemd, включая Ubuntu 20.04.

Чтобы распечатать часовой пояс текущей системы, вызовите timedatectl без каких-либо аргументов:

Выходные данные ниже показывают, что часовой пояс системы установлен на «UTC»:

Системный часовой пояс настраивается путем символической привязки /etc/localtime к двоичному идентификатору часового пояса в каталоге /usr/share/zoneinfo .
Другой вариант просмотра часового пояса текущей системы — найти файл, на который указывает символическая ссылка :

Часовой пояс системы также записывается в файл /etc/timezone :

Изменение часового timedatectl помощью команды timedatectl

Перед изменением часового пояса вам необходимо узнать длинное название часового пояса, который вы хотите использовать. Часовые пояса указаны в формате «Регион / Город».

Чтобы /usr/share/zoneinfo список всех доступных часовых поясов, вы можете либо перечислить файлы в каталоге /usr/share/zoneinfo либо вызвать команду timedatectl с параметром list-timezones :

Как только вы определите, какой часовой пояс соответствует вашему местоположению, выполните следующую команду от имени пользователя sudo:

Например, чтобы изменить часовой пояс системы на America/New_York :

timedatectl команду timedatectl чтобы проверить изменения:

Изменение часового пояса с помощью графического интерфейса

Если вы используете Ubuntu Desktop, вы можете изменить часовой пояс текущей системы через графический интерфейс.

    Откройте окно настроек системы, щелкнув значок Settings , как показано на изображении ниже:

  • В окне настроек системы щелкните вкладку Date & Time . Если для параметра « Automatic Time Zone установлено значение « ON И у вас есть подключение к Интернету и включена служба определения местоположения, часовой пояс должен быть автоматически установлен в соответствии с вашим местоположением.
  • Чтобы выбрать новый часовой пояс, вы можете либо щелкнуть карту, либо выполнить поиск часового пояса с помощью панели поиска.

    После этого нажмите × чтобы закрыть окно.

    Выводы

    Мы показали вам, как изменить часовой пояс вашей системы Ubuntu.

    Не стесняйтесь оставлять комментарии, если у вас есть вопросы.

    Источник

    Как установить или изменить часовой пояс в Linux

    Главное меню » Linux » Как установить или изменить часовой пояс в Linux

    Использование правильного часового пояса необходимо для многих задач и процессов, связанных с системами. Например, демон cron использует часовой пояс системы для выполнения заданий cron. Часовой пояс также используется для временных меток журналов.

    Читайте также:  Как послать сигнал процессу linux

    В этой статьи рассматриваются шаги, необходимые для установки или изменения часового пояса в Linux.

    Проверка текущего часового пояса

    timedatectl – утилита командной строки, которая позволяет просматривать и изменять системное время и дату. Он доступен во всех современных системах Linux на основе systemd.

    Чтобы просмотреть текущий часовой пояс, вызовите команду timedatectl без каких-либо параметров или аргументов:

    Вывод выше показывает, что часовой пояс системы установлен на UTC.

    Часовой пояс системы настраивается путем символической ссылки файла /etc/localtime на двоичный идентификатор часового пояса в каталоге /usr/share/zoneinfo.

    Другой способ проверить часовой пояс – просмотреть путь, на который указывает символическая ссылка, с помощью команды ls:

    Изменение часового пояса в Linux

    Перед сменой часового пояса вам необходимо узнать полное название часового пояса, которое вы хотите использовать. Соглашение об именовании часовых поясов обычно использует формат «Регион/Город».

    Чтобы просмотреть все доступные часовые пояса, используйте команду timedatectl или перечислите файлы в каталоге /usr/share/zoneinfo:

    Как только вы определите, какой часовой пояс соответствует вашему местоположению, выполните следующую команду от имени пользователя root или sudo :

    Например, чтобы изменить часовой пояс системы, введите Africa/Algiers:

    Чтобы проверить изменение, снова вызовите команду timedatectl:

    Миссия выполнена! Вы успешно изменили часовой пояс вашей системы.

    Изменение часового пояса путем создания символической ссылки

    Если вы используете более старый дистрибутив Linux, а утилита timedatectl отсутствует в вашей системе, вы можете изменить часовой пояс, вставив ссылку /etc/localtime на часовой пояс в каталоге /usr/share/zoneinfo.

    Удалить текущую символическую ссылку или файл:

    Определите часовой пояс, который вы хотите настроить, и создайте символическую ссылку :

    Проверьте это, перечислив файл /etc/localtime или вызвав команду date:

    Выходные данные включают часовой пояс, в этом примере это «EST».

    Вывод

    Чтобы изменить часовой пояс в системах Linux, используйте команду sudo timedatectl set-timezone, за которой следует длинное имя часового пояса, которое вы хотите установить.

    Не стесняйтесь оставлять комментарии, если у вас есть какие-либо вопросы.

    Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

    Источник

    Как установить, изменить время и часовой пояс в Ubuntu

    Важным параметром в эксплуатации любого сервера является корректно настроенное время и его своевременная синхронизация. Как выполнить смену часового пояса в ubuntu в случае его изменения или неверного указания во время установки – одна из тем этой статьи. Также я расскажу про установку и использование программ для синхронизации времени и настройку службы точного времени ntp.

    Время и дата в Ubuntu Server

    Как я уже сказал во введении, следить за системным временем в ubuntu server нужно в обязательном порядке, как и в любом другом сервере. Начальные настройки вы делаете еще во время установки системы. Далее вам может понадобиться либо изменение часового пояса, либо более точная настройка и синхронизация часов.

    Кстати, если вам интересно узнать, почему я лично использую именно ubuntu server, а не какой-то другой linux дистрибутив, то читайте мой обзор и сравнение ubuntu с другими системами.

    Особенно актуальной тема системного времени становится, когда вы арендуете сервера где-то в другой стране с отличным от вашего часового пояса. По умолчанию, у хостера скорее всего будет установлен его часовой пояс. Иногда я забываю это проверить и замечаю только тогда, когда возникают какие-то проблемы. А вот список проблем, которые могут теоретически возникнуть, если на сервере будет неправильное время:

    1. При просмотре логов или разборе инцидентов придется сначала переводить время в свой часовой пояс или формат, чтобы адекватно разобраться в ситуации.
    2. Если у вас настроена какая-то интеграция с доменной структурой Windows, расхождение по времени может приводить к проблемам.
    3. При использовании cron и автоматических заданий для выполнения, неправильное время на сервере может удивить вас тем, что ваши задачи будут выполнены не тогда, когда вы этого ожидаете.
    4. Если на сервере работает web сайт или почтовый сервис, время публикации постов или отправления писем будет неправильным, что создаст неудобство пользователям.

    Это список, что первым делом приходит на ум. Думаю, его можно сильно расширить, если потратить чуть больше времени. Но не вижу в этом смысла. Думаю, и так понятно, что часы на сервере должны всегда показывать точное время в нужном вам часовом поясе. Этим мы и займемся далее.

    Утилита date

    Посмотреть время в командной строке Ubuntu можно с помощью команды date.

    В данном случае вы видите следующую информацию:

    Формат вывода времени утилитой date в Ubuntu

    Fri День недели, пятница
    26 Число месяца
    Mar Месяц, март
    2021 Год
    02:01:59 Время в формате час:минута:секунда
    PM Время суток в 12-ти часовом формате, PM — после полудня
    UTC Часовой пояс

    Для того, чтобы посмотреть время в 24-х часовом формате в консоли ubuntu, можно использовать дополнительный ключ к команде, добавив туда еще и саму дату:

    Таким образом, с помощью параметров форматирования, вы можете выбирать любой формат времени для отображения. Традиционно, командная строка linux позволяет очень гибко выполнять различные действия с помощью своих утилит. Например, вы можете посмотреть не только время и дату, но и вывести в консоль номер дня недели, добавив дополнительный ключ %j:

    Читайте также:  Windows 10 original license

    Узнать время сервера в unix формате можно вот так:

    Если у вас часовой пояс отличный от UTC, а вы хотите увидеть время именно в этом часовой поясе, то воспользуйтесь следующим ключом команды:

    Очень удобно использовать утилиту date с различными параметрами в скриптах, чтобы получать время в удобном для вас формате. Например, когда вы используете время в названиях файлов бэкапов при их создании. Вот несколько примеров наиболее часто используемых форматов отображения даты и времени:

    Утилита timedatectl

    В составе systemd есть своя утилита для просмотра и настройки времени через консоль — timedatectl. Далее пример с ее участием для просмотра системного времени сервера ubuntu.

    Local time Локальное время данного сервера
    Universal time Время в часовом поясе UTC
    RTC time Время на аппаратных часах
    Time zone Ваш часовой пояс

    С просмотром в консоли текущего времени сервера разобрались, переходим к его настройке.

    Установка и настройка времени в Ubuntu

    Ручная настройка времени в ubuntu обычно не представляет какой-то особой сложности, если понимаешь, как это сделать. Для того, чтобы самостоятельно установить время через консоль, необходимо запустить date через sudo со следующими параметрами:

    В данном случае при обновлении времени мы подразумевали:

    • 03 — месяц март;
    • 26 — текущее число дня месяца;
    • 17 — часы;
    • 21 — минуты;

    То есть базовый формат утилиты date следующий — MMDDhhmm.

    В моих примерах время отображается в 12-ти часовом формате на английском языке. Для того, чтобы перевести его в 24-х часовой формат, нужно изменить в locale параметр LC_TIME. Именно там стоит привязка к формату. Например, в локали en_US по умолчанию используется 12-ти часовой формат, а в ru_RU или en_GB 24-х часовой.

    Для того, чтобы дата в консоли отображалась на русском языке, а время в 24-х часовом формате, достаточно сформировать locale ru_RU и изменить только формат времени, оставив все остальное на английском языке.

    После этого необходимо завершить сеанс пользователя и залогиниться снова, чтобы изменение формата вступило в силу.

    Еще один способ установки даты и времени с помощью timedatectl:

    При этом вы можете получить ошибку: Failed to set time: Automatic time synchronization is enabled. Утилита timedatectl более умная, нежели date. Она проверяет, не настроена ли у вас автоматическая синхронизация времени. И если настроена, то вручную не дает его изменить. В целом, это правильный подход, хотя и может создавать неудобства. В этом случае вам надо отключить синхронизацию и только потом установить время руками. Эту тему мы будем рассматривать ниже отдельно.

    Установка и настройка часового пояса в Ubuntu

    Непосредственно со временем разобрались, рассмотрим теперь настройку временной зоны. Как посмотреть установленный часовой пояс, мы уже разобрались выше. Теперь разберем, как его изменить или просто задать, если ранее этого не сделали и у вас по умолчанию стоит UTC.

    Установить часовой пояс можно с помощью утилит — tzselect и timedatectl. С их же помощью можно перед этим посмотреть список доступных зон. Например, так:

    Вы увидите длинный список временных зон, состоящий из 348 строк. Его можно будет скролить, либо сразу ограничить вывод нужным вам диапазоном.

    После того, как выбрали зону, изменяем текущий часовой пояс.

    или с помощью tzselect:

    Мы выполнили изменение часового пояса в ubuntu как минимум двумя разными способами. Не забудьте после этого на всякий случай проверить установленную timezone. Расскажу про еще один способ, как это можно сделать в консоли. После настройки тайм зоны, на нее создается символьная ссылка от файла /etc/localtime в директорию /usr/share/zoneinfo.

    Меняя эту ссылку, можно так же изменять часовой пояс.

    Синхронизация времени с помощью ntpdate, timedatectl

    После того, как вы настроили правильную дату и нужный часовой пояс, стоит поработать над тем, чтобы часы всегда показывали точное значение минут и часов. Для этого надо настроить синхронизацию времени. Тут традиционно для linux есть несколько способов и вариантов настройки.

    Первый и самый простой способ синхронизации времени в ubuntu — воспользоваться известной утилитой ntpdate.

    В качестве параметра ntpdate принимает адрес сервера точного времени, с которого будет произведена синхронизация локальных часов. Я предлагаю воспользоваться популярным пулом серверов точного времени — pool.ntp.org.

    Пул автоматически выбрал сервер точного времени, с которым мы синхронизировали свои часы. Один из способов автоматизации этого процесса является запуск ntpdate через cron. Но это не очень удобное решение, так как есть более эффективные способы. Например, с помощью локальной службы ntp или chrony, а так же компонента systemd — timesyncd.

    После установки системы вам стоит проверить, а не запущена ли у вас уже синхронизация времени с помощью timesyncd. Проверяем:

    Так и есть. В большинстве современных дистрибутивов, где установлена systemd, уже запущена timesyncd. Параметры этой службы находятся в конфигурационном файле /etc/systemd/timesyncd.conf, где можно посмотреть, какой сервер используется для синхронизации времени и в случае необходимости, заменить. В Ubuntu это ntp.ubuntu.com. Большого смысла менять его на другой сервер нет. Если только вы не хотите синхронизировать время с какого-то своего локального сервера. Как это сделать, я расскажу отдельно ниже.

    Клиент ntp

    Если вас по какой-то причине не устраивает служба timesyncd, можете ее отключить.

    Читайте также:  Php редакторы для windows

    А в место нее установить, к примеру, ntp, работающую в режиме клиента.

    Поясню немного, зачем это может понадобиться. Если вам необходимо только синхронизировать время, то утилиты timesyncd вполне хватает для этой простой задачи. Но иногда вам нужен более широкий функционал. Например, вы хотите настроить в своей локальной сети свой собственный сервер времени, чтобы остальные компьютеры сверяли свои часы с ним. В этом случае вам нужна будет служба ntp. А раз вы ее и так поставите, то зачем вам дублирование функционала? В этом случае имеет смысл отключить timesyncd и оставить только ntp. Она умеет работать и в качестве сервера времени, и в качестве клиента синхронизации.

    Итак, установили ntp. Для того, чтобы синхронизировать время, достаточно ее просто запустить:

    Проверяем статус синхронизации:

    Видим пул серверов времени, с которыми наш ubuntu server будет синхронизировать свои часы. Настройки службы находятся в конфигурационном файле /etc/ntp.conf. Посмотреть информацию о работе ntp можно с помощью утилиты ntpq:

    Далее рассмотрим вариант, когда вам нужен свой сервер времени в локальной сети. Для этого донастроим установленную службу ntp.

    Настройка ntp сервера

    Сервер времени в своей работе использует отдельный протокол NTP (Network Time Protocol). Ему нужен для работы UDP Port 123. Так что прежде чем дальше настраивать ntp, откройте этот порт на фаерволе или отключите его. Настройка firewall выходит за рамки данной статьи, так как в его качестве может использоваться разный софт. Если у вас управление фаерволом настроено через ufw, то достаточно такой команды:

    Далее открываем конфиг /etc/ntp.conf и приводим его к примерно следующему виду:

    Это минимально необходимое содержимое, чтобы запустить свой собственный сервер времени на базе ntp в локальной сети 10.20.1.0/24. Если вам не нужен протокол ipv6, то можете его отключить. Для этого в файл /etc/default/ntp добавляем параметр:

    И перезапускаем службу ntp. Проверяем, как она работает.

    Служба времени слушает все сетевые интерфейсы. Теперь с любого клиента в локальной сети можно выполнить с помощью ntpdate синхронизацию времени с нашим Ubuntu Server. Проверьте это самостоятельно. Ранее я уже показывал, как это сделать.

    Ошибки синхронизации времени

    TIME_ERROR: 0x2041: Clock Unsynchronized

    Иногда в логе /var/log/ntp.log или системном логе /var/log/syslog вы можете наблюдать ошибку — kernel reports TIME_ERROR: 0x2041: Clock Unsynchronized. На нее можно не обращать внимание, так как реально это не ошибка, а информационное сообщение. Нам просто сообщают о том, что в момент страта службы ntp, ядро linux еще не синхронизировало время.

    the NTP socket is in use, exiting

    Если при запуске синхронизации времени с помощью ntpdate вы видите ошибку — the NTP socket is in use, exiting, то это значит, что у вас уже запущена служба ntp. Для того, чтобы не было конфликтов при изменении времени, должно работать что-то одно, либо ntpdate, либо ntp, но не оба одновременно. Чтобы эта ошибка исчезла, достаточно просто остановить ntp и запустить ntpdate еще раз.

    no server suitable for synchronization found

    Еще одна популярная ошибка, которая может возникнуть при запуске ntpdate. Она означает, что не получается по какой-то причине установить соединение с сервером времени. В общем случае это означает, что есть какие-то сетевые проблемы, но не обязательно. Вы можете попробовать запустить ntpdate c ключом -u. Он означает, что будет использован локальный не 123-й порт udp, как обычно, а другой из непривилегированного диапазона. Иногда это помогает, так как многие провайдеры из-за известной уязвимости протокола ntp блокируют исходящий 123 порт.

    Служба ntp не запускается после загрузки сервера

    Если ntp не стартует после загрузки сервера, то связано это может быть в первую очередь с тем, что не отключена служба timesyncd. Отключите ее и проверьте еще раз:

    Ubuntu меняет время и часовой пояс в bios

    Убунта имеет дурную привычку при синхронизации времени устанавливать в bios часовой пояс UTC. В общем случае это не доставляет проблем, но если у вас установлена параллельно еще какая-то система на компьютере, то это может создавать проблемы. Чтобы Ubuntu не трогала часы в bios, необходимо выполнить следующую команду:

    Время загрузки системы

    Немного затрону еще одну тему, которая не связана напрямую с часами на сервере, но тем не менее имеет отношение ко времени. Эта информация наиболее актуальна как раз в этой статье.

    Как узнать точное время включения компьютера с Ubuntu?

    Команда uptime может показать не только время, в течении которого работает сервер, но и точное время запуска системы:

    Эту же информацию можно получить с помощью утилиты who:

    Время последнего выключения Ubuntu

    Если вы хотите узнать не только время включения сервера, но и время последних выключений или время последней перезагрузки, то воспользуйтесь утилитой last:

    Она показывает, когда последние несколько раз компьютер выключался или перезагружался.

    Заключение

    Подвожу кратко итог сегодняшней статьи на тему настройки времени на сервере с ubuntu. Я рассмотрел все основные моменты, связанные с часами, часовыми поясами, а так же их синхронизацией. Если я забыл что-то важное, ошибся или у вас есть дополнения, без которых эта статья не видится вам полноценной и законченной, делитесь ими в комментариях. За это вам будет моя отдельная благодарность.

    Источник

  • Adblock
    detector