Linux usr share zoneinfo

LFCA: научитесь управлять временем и датой в Linux — часть 6

Эта статья является Частью 6 серии LFCA. Здесь, в этой части, вы познакомитесь с общими командами системного администрирования для управления настройками времени и даты в системе Linux.

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

В Linux есть 2 типа часов:

  • Аппаратные часы. Это часы с питанием от батареи, также называемые часами CMOS или RTC (Часы реального времени). Часы работают независимо от операционной системы и продолжают работать, даже когда система выключена, при условии наличия батареи CMOS.
  • Системные часы ( Программные часы ) — также называются часами ядра. Во время загрузки системные часы инициализируются аппаратными часами и вступают в силу с них.

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

А пока мы посмотрим, как вы можете проверить время и дату в системе Linux.

Проверка времени и даты в системе Linux

Есть две основные утилиты, используемые для проверки времени и даты в системе Linux. Первая — это команда даты. Без каких-либо аргументов он предоставляет довольно мало информации, показанной

$ date Friday 26 March 2021 11:15:39 AM IST 

Чтобы просмотреть дату только в формате времени дд-мм-гг, выполните команду:

$ date +"%d-%m-%y" 26-03-21 

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

$ date "+%T" 11:17:11 

Команда timedatectl — это новая утилита, используемая в современных системах Linux, таких как Ubuntu 18.04, RHEL 8 и CentOS 8. Это замена команды даты, которая использовалась в старых системах SysVinit. Его можно использовать для запроса и настройки времени в системе Linux.

Без каких-либо параметров команда timedatectl выводит массив информации, такой как местное время, время UTC, время RTC и часовой пояс, и это лишь некоторые из них.

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

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

Читайте также:  Kes агент администрирования linux

Судя по приведенному выше фрагменту, я нахожусь в часовом поясе Африка/Найроби. Чтобы просмотреть доступные часовые пояса, выполните команду:

$ timedatectl list-timezones

Нажмите ENTER, чтобы просмотреть весь список доступных часовых поясов.

Часовые пояса также определяются в пути /usr/share/zoneinfo/, как показано.

Есть несколько способов, которые вы можете использовать для настройки часового пояса. С помощью команды timedatectl вы можете установить часовой пояс, например, Америка/Чикаго, используя показанный синтаксис.

$ timedatectl set-timezone 'America/Chicago'

Другой способ установить часовой пояс — создать символическую ссылку из файла часового пояса по пути /usr/share/zoneinfo на /etc/localtime. Например, чтобы установить местный часовой пояс на EST (Восточное стандартное время), введите команду:

$ sudo ln -sf /usr/share/zoneinfo/EST /etc/localtime

Установите дату и время в системе Linux

Чтобы установить время только в системе Linux с использованием формата ЧЧ:ММ:СС (час:минута:секунда), используйте приведенный ниже синтаксис.

$ timedatectl set-time 18:30:45

Чтобы установить дату только в формате ГГ-ММ-ДД (Год: Месяц: День), используйте следующий синтаксис:

$ timedatectl set-time 20201020

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

$ timedatectl set-time '2020-10-20 18:30:45'

ПРИМЕЧАНИЕ. Не рекомендуется вручную устанавливать время и дату таким образом, так как вы, скорее всего, настроите неточные параметры времени и даты. На самом деле, по умолчанию автоматическая синхронизация времени включена, чтобы вы не могли вручную настроить время и дату.

Наиболее рекомендуемый способ установить время — либо указать часовой пояс, в котором вы находитесь, как показано ранее, либо включить автоматическую синхронизацию времени с удаленным сервером NTP.

Установите автоматическую синхронизацию времени с помощью NTP-сервера

NTP – это сокращение от Network Time Protocol — интернет-протокола, который используется для автоматической синхронизации системных часов с пулом сетевых NTP-серверов.

С помощью команды timedatectl вы можете настроить автоматическую синхронизацию времени следующим образом:

Чтобы отключить автоматическую синхронизацию времени NTP, выполните:

Заключение

Команды timedatectl и date — это удобные инструменты командной строки, которые могут помочь вам проверить и настроить время в Linux.

Источник

Обновление базы данных часовых поясов в Linux.

Последние обновления базы данных часовых поясов публикуются на сайте международной организации IANA (The Internet Assigned Numbers Authority) в разделе Time Zone Database — Latest Version – Time Zone Data v. yyyy – файл именем tzdatayyyyx.tar.gz , где yyyy- год, x – версия файла. Эти обновления отражают актуальные границы часовых поясов и правила перехода на зимнее/летнее время. В архиве tzdatayyyy находятся исходные текстовые файлы, содержащие настройки системного времени для различных зон, например Европы ( файл europe ), Азии (asia), северной Америки (northamerica) и т.п. Скачать актуальную версию можно также с использованием FTP-доступа, например командой wget:

Хранение этих данных не потребуется, поэтому, все последующие операции можно выполнить в каком-нибудь временном каталоге, который в дальнейшем, удалить.

Читайте также:  Chromium kali linux install

Создаем временный каталог, например, /tmp/tznew :

Скачиваем базу данных часовых поясов:

Извлекаем содержимое архива:

tar zxvf tzdata-latest.tar.gz

После распаковки, в каталоге будут находиться текстовые файлы с документацией и файлы настроек временных зон по регионам (africa, asia, europe, и т.п. )

Настройки системного времени в операционных системах Linux, определяются содержимым файла /etc/localtime . Данный файл не является текстовым и создается путем компиляции из исходного файла соответствующей временной зоны специальной утилитой zic , выполняемой с правами суперпользователя root . Утилита zic читает текстовый файл с описаниями зон и на выходе формирует бинарные файлы специального формата в каталоге /usr/share/zoneinfo/. Для замены, например, настроек для Европы, выполняется команда zic europe — где europe — имя файла из распакованного архива. Для азиатского региона — zic asia и т.п.

В результате выполнения данной команды произойдет обновление файлов с данными временных настроек в каталоге /usr/share/zoneinfo/Europe/. Например, для Москвы, настройки содержатся в файле /usr/share/zoneinfo/Europe/Moscow и для их применения достаточно создать символьную ссылку для /etc/localtime:

ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime

А, например, для Новосибирска

ln -sf /usr/share/zoneinfo/Asia/Novosibirsk /etc/localtime

В некоторых дистрибутивах Linux, вместо ссылки используется копирование скомпилированного файла в /etc/localtime , что допустимо, но все же, не совсем оптимально.

Для проверки системного времени можно использовать команду date

Источник

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

Часовой пояс в Linux

Часовой пояс в Linux обычно настраивается во время установки системы. Иногда пользователю может потребоваться его изменить. Способ изменения часового пояса (его еще называют временной зоной) может зависеть от конкретного дистрибутива. Рассмотрим некоторые из способов изменения часового пояса.

Посмотреть текущий часовой пояс

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

Команда date

Команда date выводит текущую дату, время и часовой пояс:

$ date Вт мар 12 19:01:33 MSK 2019

В выводе команды мы можем видеть, что текущая временная зона соответствует Москве — MSK .

Команда timedatectl

Утилита timedatectl применяется для настройки и получения информации о текущем системном времени. Она доступна в системах, использующих systemd.

Если выполнить команду timedatectl без параметров, то будет выведена информация о системных часах, а также часовой пояс (в поле Time zone ).

$ timedatectl Local time: Вт 2019-03-12 20:18:08 MSK Universal time: Вт 2019-03-12 17:18:08 UTC RTC time: Вт 2019-03-12 17:18:09 Time zone: Europe/Moscow (MSK, +0300) System clock synchronized: yes NTP service: active RTC in local TZ: no

ls -lh /etc/localtime

Файл /etc/localtime это символическая ссылка, которая указывает на текущий часовой пояс, используемый в системе.

Для просмотра можно воспользоваться командной:

$ ls -lh /etc/localtime lrwxrwxrwx 1 root root 35 мар 12 20:09 /etc/localtime -> ../usr/share/zoneinfo/Europe/Moscow

Получить список доступных часовых поясов

Утилита tzselect

Перед тем, как устанавливать часовой пояс, нужно понять, какое значение можно установить. Для этого можно воспользоваться утилитой tzselect .

После запуска утилита tzselect отображает список географических областей. Вы должны ввести номер области и нажать Enter . Затем появится список стран. Аналогично, нужно ввести номер страны. Появится список городов. Вводим номер города. В результате вы сможете увидеть название вашей временной зоны.

tzselect Please identify a location so that time zone rules can be set correctly. Please select a continent, ocean, "coord", or "TZ". 1) Africa 2) Americas 3) Antarctica 4) Asia 5) Atlantic Ocean 6) Australia 7) Europe 8) Indian Ocean 9) Pacific Ocean 10) coord - I want to use geographical coordinates. 11) TZ - I want to specify the time zone using the Posix TZ format. #? 7

tzselect

Утилита timedatectl

Утилита timedatectl поддерживает опцию list-timezones . Выполнив следующую команду можно просмотреть список всех доступных временных зон:

timedatectl list-timezones

Можно воспользоваться grep и ограничить область поиска. Например, выведем список временных зон только для Европы:

timedatectl list-timezones | grep Europe | less

Изменить часовой пояс

Изменяем часовой пояс утилитой timedatectl

Напомним, что утилита timedatectl доступна только для систем, использующих systemd. Если у вас нет утилиты timedatectl, то используйте способ описанный в следующем параграфе.

Читайте также:  Linux узнать свой ip centos

Для установки часового пояса с помощью утилиты timedatectl нужно выполнить команду:

timedatectl set-timezone Europe/Moscow

Во время ввода часового пояса можно нажимать дважды клавишу Tab , чтобы получить список часовых поясов.

Изменяем часовой пояс настройкой /etc/localtime

Данный способ наиболее универсальный и работает в большинстве дистрибутивов Linux.

Необходимо создать символическую ссылку /etc/localtime , чтобы она указывала на файл нужной временной зоны. Файлы временных зон хранятся в каталоге /usr/share/zoneinfo/ . Каждая зона имеет путь /usr/share/zoneinfo/Название/Зоны . Например, для Москвы это /usr/share/zoneinfo/Europe/Moscow .

Итак создадим ссылку на нужный файл временной зоны:

sudo unlink /etc/localtime sudo ln -s /usr/share/zoneinfo/Europe/Moscow /etc/localtime

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

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

Чтобы установить часовой пояс для отдельной программы можно задать его через переменную окружения TZ :

TZ=America/Chicago программа

tz timezone

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

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

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

Если вы работаете в Gnome, откройте Параметры системы .

Перейдите на вкладку Сведения о системе , далее вкладка Дата и время (в зависимости от версии Gnome названия пунктов могут немного отличаться). Нажмите на надпись Часовой пояс .

Изменить часовой пояс в Gnome

Установка часового пояса

Откроется карта с возможностью интерактивного выбора часового пояса. Выберите мышкой нужный регион на карте.

Заключение

Мы рассмотрели как изменить часовой пояс в Linux, как определить текущий часовой пояс и просмотреть список доступных временных зон. Большинству пользователей подойдет способ с использованием графической программы для изменения Параметров системы.

Источник

Оцените статью
Adblock
detector