Синхронизировать системное время linux

Синхронизация времени в Linux

Синхронизация времени в Linux

Правильная синхронизация времени в Linux — залог корректной работы преимущественного большинства приложений и сервисов, что особенно касается тех инструментов, которые хоть как-то связаны с интернетом. Во всех дистрибутивах данной операционной системы за синхронизацию даты и времени отвечает специальная утилита. Она находится в активном состоянии по умолчанию, поэтому у пользователей нет необходимости как-то ее настраивать или изменять. Однако иногда такая надобность все же появляется из-за разных причин, например, случайных сбоев. Сегодня мы хотим рассмотреть принцип этой конфигурации и смену сервиса синхронизации на более привычный для многих юзеров.

Синхронизируем время в Linux

Для начала давайте уточним, что затронуть абсолютно все дистрибутивы в рамках одной статьи не получится, поэтому за пример мы возьмем самую популярную сборку — Ubuntu. В остальных ОС все происходит практически идентично, а различия наблюдаются лишь в элементах графического интерфейса. Однако если вы в этой статье не найдете интересующей информации, придется воспользоваться официальной документацией дистрибутива, чтобы справиться с поставленной задачей.

Настройка даты через графический интерфейс

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

Переход к параметрам для настройки времени в Linux через графическое меню

    Откройте меню приложений и отыщите там «Параметры».

  • Перейдите в раздел «Сведения о системе». Переход к сведениям о системе для настройки времени в Linux через графическое меню
  • Здесь вас интересует категория «Дата и время». Переход к настройкам даты и времени Linux
  • Обратите внимание на пункты автоматического определения даты и времени. Они используют интернет для выставления оптимальных настроек, которые зависят от выбранного часового пояса. Вы можете активировать или отключить эти настройки, передвинув ползунки. Отключение или включение автоматического определения даты и времени в Linux
  • При их отключении строки с датой, временем и часовым поясом активируются, а это значит, что теперь ничего не помешает вам установить пользовательские параметры. Ручная настройка времени и часового пояса через графическое меню Linux
  • В окне местоположения выберите точку на карте или используйте поиск. Окно для выбора часового пояса через графическое меню Linux
  • Дополнительно в «Дата и время» указывается формат. По умолчанию он 24-часовой. Выбор формата отображения времени через графическое меню Linux
    Читайте также:  Switch to root in linux

    Как видите, ничего сложного во взаимодействии с графическим интерфейсом нет. Однако недостаток этого способа заключается в том, что в меню отсутствуют важные параметры управления сервисом синхронизации, поэтому в определенных ситуациях использовать «Параметры» не получится.

    Стандартные команды для управления временем

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

    1. Начните с запуска «Терминала». Сделать это можно, например, нажав на соответствующий значок в меню приложений. Запуск терминала для использования команд времени в Linux
    2. Введите команду date , чтобы определить текущую дату и время. Ввод команды для просмотра текущей даты в терминале Linux
    3. В новой строке отобразится интересующая вас информация в стандартном формате. Просмотр текущей даты через терминал Linux
    4. Через стандартную команду можно и изменить часовой пояс. Сначала нужно просмотреть доступный список поясов и запомнить название требуемого. Напечатайте timedatectl list-timezones и нажмите на Enter. Вызов команды для просмотра часового пояса через терминал в Linux
    5. Перемещайтесь вниз по списку с помощью клавиши Пробел. После того, как вы найдете нужный пояс и запомните правило его написания, нажмите на Q для выхода. Просмотр списка часовых поясов через терминал в Linux
    6. Команда sudo timedatectl set-timezone America/New_York отвечает за смену часового пояса на выбранный. Вместо America/New_York вам следует написать определенный ранее вариант. Ввод команды для изменения текущего часового пояса через терминал в Linux
    7. Для подтверждения действия придется ввести пароль суперпользователя, поскольку команда была выполнена с аргументом sudo. Ввод пароля Linux для изменения часового пояса через терминал

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

    Взаимодействие с сервисом timesyncd

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

    1. Для определения текущего статуса timesyncd используйте команду timedatectl в консоли. Вызов команды для проверки текущего состояния сервиса синхронизации времени Linux
    2. В новых строках вы получите все необходимые сведения, куда относится локальное время, установленная зона и данные о синхронизации и активности самого сервиса. Просмотр информации о текущем состоянии сервиса синхронизации времени Linux
    3. Если вы видите, что этот инструмент сейчас отключен по каким-то причинам и хотите запустить его, чтобы наладить синхронизацию, используйте строку sudo timedatectl set-ntp on . Команда для активации работы сервиса синхронизации времени в Linux
    Читайте также:  Astra linux отключение parsec

    Установка NTPD

    Последний раздел нашего сегодняшнего материала будет посвящен замене упомянутого выше сервиса синхронизации времени на более надежный протокол NTPD (Network Time Protocol daemon). Именно его раньше задействовали во многих дистрибутивах по умолчанию и хвалили за корректное взаимодействие с особо чувствительными ко времени приложениями. Инсталляция и замена сервиса происходит так:

    1. Для начала отключите стандартную утилиту, введя sudo timedatectl set-ntp no . Ввод команды для отключения сервиса синхронизации времени в Linux
    2. Придется подтвердить подлинность учетной записи путем написания пароля суперпользователя. Подтверждение пароля для отключения сервиса синхронизации времени в Linux
    3. После вы можете использовать уже знакомую команду timedatectl для того, чтобы убедиться в отключенном состоянии инструмента. Проверка информации о текущем состоянии сервиса после отключения Linux
    4. Перед началом установки нового программного обеспечения рекомендуется произвести инсталляцию последних обновлений. Осуществляется это через sudo apt update . Команда для установки обновлений Linux перед установкой программ
    5. По окончании этого процесса используйте команду sudo apt install ntp . Команда для установки нового сервиса синхронизации времени
    6. Подтвердите уведомление о необходимости скачивания архивов. Подтверждение установки нового сервиса синхронизации времени Linux
    7. Ожидайте завершения скачивания и инсталляции пакетов. Ожидание завершения установки нового сервиса синхронизации времени Linux
    8. Теперь можете использовать новый протокол, вводя соответствующие атрибуты в «Терминал». Просмотр основных сведений происходит через ntpq -p . Использование нового сервиса для синхронизации времени в Linux

    Network Time Protocol daemon будет активирован автоматически, поэтому никаких дополнительных команд вводить не нужно. Вы можете сразу же приступить к тестированию проблемных приложений или выполнять другие действия, ради которых и осуществлялась инсталляция нового сервиса синхронизации времени.

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

    Источник

    About time synchronisation

    Network Time Protocol (NTP) is a networking protocol for synchronising time over a network. Basically, a client requests the current time from a server, and uses it to set its own clock.

    Behind this simple description, there is a lot of complexity. There are three tiers of NTP servers; tier one NTP servers are connected to atomic clocks, while tier two and tier three three servers spread the load of actually handling requests across the Internet.

    The client software is also a lot more complex than you might expect. It must factor in communication delays and adjust the time in a way that does not upset all the other processes that run on the server. Luckily, all that complexity is hidden from you!

    Читайте также:  Linux services for windows

    By default, Ubuntu uses timedatectl / timesyncd to synchronise time, and they are available by default. See our guide If you would like to know how to configure timedatectl and timesyncd .

    Users can also optionally use chrony to serve NTP.

    How time synchronisation works

    Since Ubuntu 16.04, timedatectl / timesyncd (which are part of systemd ) replace most of ntpdate / ntp .

    About timesyncd

    timesyncd replaces not only ntpdate , but also the client portion of chrony (formerly ntpd ). So, on top of the one-shot action that ntpdate provided on boot and network activation, timesyncd now regularly checks and keeps your local time in sync. It also stores time updates locally, so that after reboots the time monotonically advances (if applicable).

    About timedatectl

    If chrony is installed, timedatectl steps back to let chrony handle timekeeping. This ensures that no two time-syncing services can conflict with each other.

    ntpdate is now considered deprecated in favor of timedatectl (or chrony ) and is no longer installed by default. timesyncd will generally keep your time in sync, and chrony will help with more complex cases. But if you had one of a few known special ntpdate use cases, consider the following:

    • If you require a one-shot sync, use: chronyd -q
    • If you require a one-shot time check (without setting the time), use: chronyd -Q

    While use of ntpd is no longer recommended, this also still applies to ntpd being installed to retain any previous behaviour/config that you had through an upgrade. However, it also implies that on an upgrade from a former release, ntp / ntpdate might still be installed and therefore renders the new systemd -based services disabled.

    Further reading

    • ntp.org: home of the Network Time Protocol project
    • pool.ntp.org: project of virtual cluster of timeservers
    • Freedesktop.org info on timedatectl
    • Freedesktop.org info on systemd-timesyncd service
    • Chrony FAQ
    • Feeding chrony from GPSD
    • Also see the Ubuntu Time wiki page for more information.

    Источник

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