Шелл Оил
1 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд

How to Synchronize Time with NTP in Linux

How to Synchronize Time with NTP in Linux

The Network Time Protocol (NTP) is a protocol used to synchronize computer system clock automatically over a networks. The machine can have the system clock use Coordinated Universal Time (UTC) rather than local time.

Maintaining accurate time on Linux systems especially servers is a important task for many reasons. For example, in a networked environment, accurate timekeeping is required for accurate timestamps in packets and system logs for root-cause analysis, determining when problems occurred, and finding correlations.

Chrony is now the default NTP implementation package on the latest versions of Linux operating systems such as CentOS, RHEL, Fedora and Ubuntu/Debian among others and comes pre-installed by default. The package consists of chronyd, a daemon that runs in userspace, and chronyc a command-line program for monitoring and controlling chronyd.

Chrony is a versatile NTP implementation and performs well in a wide range of conditions (check out the comparison of chrony suite to other NTP implementations). It can be used to synchronize the system clock with NTP servers (act as a client), with a reference clock (e.g a GPS receiver), or with a manual time input. It can also be employed as an NTPv4 (RFC 5905) server or peer to provide a time service to other computers in the network.

In this article, you will learn how to synchronize server time with NTP in Linux using chrony.

Installing Chrony in Linux Server

In most Linux systems, the chrony command is not installed by default. To install it, execute the below command.

Once the installation is complete, start the chrony service and enable it to automatically start at system boot, then check if it is up and running.

Check Chrony Status

To cross-check if chrony is now up and running fine and to see the number of servers and peers that are connected to it, run the following chronyc command.

Check Chrony Activity

Checking Chrony Synchronization

To display information (list of servers available, status, and offsets from the local clock and the source) about the current time sources that chronyd is accessing, run the following command with the -v flag shows the description for each column.

Check Chronyd Time Sources

Concerning the previous command, to display other useful information for each of the sources currently being examined by chronyd (such as the drift rate and offset estimation process), use the sourcestats command.

Check Chronyd Source Stats

To check chrony tracking, run the following command.

Читайте так же:
Бензопила китай карбюр регулировка

In the output of this command, the reference ID specifies the name (or IP address) if available, of the server to which the computer is currently synchronized, out of all the available servers.

Display Chrony Tracking

Configuring Chrony Time Sources

The main chrony configuration file is located at /etc/chrony.conf (CentOS/RHEL/Fedora) or /etc/chrony/chrony.conf (Ubuntu/Debian).

When installing a Linux OS in the cloud, your system should have some default servers or a pool of servers added during the installation process. To add or change the default servers, open the configuratioon file for editing:

You can either add several servers using the server directive as shown.

Add NTP Servers

or in most cases, it’s best to use to find an NTP server. This allows the system to try to find the closest available servers for you. To add a pool, use the pool directive:

Add a Pool of NTP Servers

There are many other options you can configure in the file. After making changes, restart the chrony service.

To show information about the current time sources that chronyd is querying, run the following command once more.

View Chronyd Time Sources

To check chrony tracking status, run the following command.

Check Chrony Synchronizing Status

To display the current time on your system, check whether system clock is synchronized and whether NTP is indeed active, run the timedatectl command:

Check Current Server Time

That brings us to the end of this guide. If you have any questions, reach us via the comment section below. For more information, check out: using the chrony suite to configure NTP from the RHEL 8 documentation or using chrony to configure NTP from the Ubuntu official blog.

If You Appreciate What We Do Here On TecMint, You Should Consider:

TecMint is the fastest growing and most trusted community site for any kind of Linux Articles, Guides and Books on the web. Millions of people visit TecMint! to search or browse the thousands of published articles available FREELY to all.

If you like what you are reading, please consider buying us a coffee ( or 2 ) as a token of appreciation.

Support Us

We are thankful for your never ending support.

Related Posts

Install Zabbix on Linux

Install SVN in Linux

Secure Apache with Free Let’s Encrypt SSL Certificate on CentOS 8

SSH Server Security Practices

Install MS SQL Server on Linux

Install Google Chrome in CentOS

6 thoughts on “How to Synchronize Time with NTP in Linux”

I have a dual boot W10/Ubuntu PC. When I boot to Ubuntu from W10, the displayed time is correct before the Ubuntu home page comes up, then decreases by 4 hours when the Ubuntu home page is displayed.

When booting back to W10, the time stays in error by 4 hours.

How do I get correct time without having to synchronize after every boot ?

Читайте так же:
Регулировка фар с линзами на солярис

Use ntpdate on machine where you don’t want to run a NTP server. A simple Cron task can automate time synchronization with a upstream NTP server.

Настройка Centos 7 после установки

Статья о том как подготовить только что установленный на сервер дистрибутив Centos 7 к дальнейшей работе с ним.

Сразу же выключаем Network Manager. Это программа, облегчающая определение и конфигурацию средств для автоматического подключения к сети. Полезна она только для домашнего ПК или ноутбука, на сервере же может создавать проблемы с настройкой сети, т.к. может самостоятельно менять настройки.

Вариант в одну строку:

Настройка сети

Настройки сетевых интерфейсов указываются в файле /etc/sysconfig/network-scripts/ifcfg-eth0. Однако в Centos 7 файл конфигурации сетевого интерфейса может иметь имя наподобие ifcfg-enp0s1. Как изменить имя сетевого интерфейса можно прочитать здесь.

Если Вы не используете протокол IPv6, то можно закоментировать все строки с ним.

Прописываем имя этого сервера в /etc/hostname и /etc/hostname:

Не забываем прописывать DNS в /etc/resolv.conf

Перезапускаем сетевую подсистему:

Теперь можно подключиться к серверу по SSH.

Если используется proxy-сервер добавляем его адрес в файл /etc/yum.conf:

Устанавливаем программу для загрузки файлов по сети wget:

Добавляем в файл /etc/wgetrc адрес proxy-сервера:

Так же в Centos 7 по умолчанию включена система принудительного контроля доступа SELinux (англ. Security-Enhanced Linux — Linux с улучшенной безопасностью). Она расширяет стандартные стандартные права доступа. Использовать её или нет зависит от требований к серверу и его назначению. Настройка данной системы представляет собой материал отдельной статьи.

Если же Вам данная система не нужна, отключаем SELinux:

Подключение EPEL репозитория

EPEL (Extra Packages for Enterprise Linux) — это основанный сообществом открытый и бесплатный проект репозитория, предоставляемый командой Fedora, который содержит высококачественные пакеты дополнительного программного обеспечения для Linux дистрибутивов, включая RHEL (Red Hat Enterprise Linux), CentOS, и Scientific Linux.

Отключаем FireWall

Настройка Firewall это также тема отдельной статьи. Но на некоторых серверах в нем нет надобности и его можно отключить:

Установка и настройка NTPD

Для того, чтобы на сервере всегда было точное время необходимо установить и настроить ntpd.

ntpd (Network Time Protocol daemon) — программа-демон, который устанавливает и обслуживает системное время, используется для синхронизации с другими серверами времени.

Далее нужно указать сервера времени с которыми будет синхронизировать время наш сервер. Адреса этих серверов можно найти в интернете, лучше выбирать ближайшие сервера, то есть искать сервера расположенные в вашей стране. Указываем сервера синхронизации в vi /etc/ntp.conf (лучше не меньше трех):

По умолчанию сервер NTP будет доступен всем хостам в Интернет. Если вы хотите запретить всем машинам обращаться к вашему серверу NTP, добавьте следующую строку:

Читайте так же:
Чем регулируют клапана на классике

Сервера с которыми сверяемся, должны иметь возможность менять наше время:

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

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

Если включен Firewall добавляем ntp в исключения:

Добавляем в автозапуск:

Дополнительные полезные утилиты.

Обязателен для установки набор утилит для сборки программ из исходного кода и создания rpm пакетов.

При минимальной установке в Centos 7 отсутствуют некоторые полезные утилиты для работы с сетью arp, hostname, ifconfig, netstat, rarp, route, plipconfig, slattach, mii-tool, iptunnel и ipmaddr. Чтобы вернуть их необходимо установить набор утилит net-tools.

Официальная страничка проекта net-tools здесь.

Также полезно установить lsof (от англ. LiSt of Open Files) — утилита показывает какие файлы используются теми или иными процессами.

Установим Midnight Commander — файловый менеджер для удобного перемещения по файловой системе и управления файлами. Она состоит из 2 панелей (фрэймов), в которых может отображаться информация о двух выбранных каталогах одновременно, содержимое, выбранного в одной из панелей, файла, и многое другое.

Вот пожалуй и вся универсальная настройка Centos 7 после установки. Далее уже идет настройка сервера под Ваши задачи. Надеюсь информация была полезной.

2 комментария к “ Настройка Centos 7 после установки ”

Дмитрий, добрый день.

Не стоит так сразу рубить network manager, не так он и плох

Вот пара простых примеров.

Задать адрес ipv4 и маску для сетевой карты eno1

nmcli c modify eno1 ipv4.addresses

Задаём статичный шлюз для этой сетевой

nmcli c modify eno1 ipv4.gateway

nmcli c modify eno1 ipv4.dns

Указываем, что эти данные задаются вручную, а не с помощью DHCP (для DHCP вместо manual нужно указать auto, но мы-то уже вручную всё указали)

nmcli c modify eno1 ipv4.method manual

А по поводу настроек CentOS 7 — из моей подписи посмотрите ссылку, вдруг что полезное пригодится.

Как синхронизировать время в Linux

Часы в компьютере далеко не идеальны. Через несколько дней, недель или месяцев они перестают отображать правильное время. Они могут показывать «10:30», тогда как на самом деле «10:33». На старых компьютерах было обычной практикой периодически переустанавливать часы компьютера вручную. Но после того, как интернет-соединения стали повсеместными, современные операционные системы начали автоматически настраивать часы с помощью NTP-серверов.

В статье я покажу, как синхронизировать время в Linux в дистрибутивах Ubuntu, Debian, Fedora, Arch Linux, openSUSE, Manjaro, CentOS, Elementary ОС, Zorin OS и т.д.

Читайте так же:
Ирбис альфа регулировка клапанов

How NTPs Work

NTPs rely on a hierarchical structure of time sources divided into levels, called strata. Stratum 0 is the reference (an atomic clock or GPS clock); NTP servers don’t operate here.

NTP servers on stratum 1 synchronize to the atomic clock and act as references for stratum 2 servers. Stratum 2 servers synchronize to stratum 1, but can also synchronize with themselves. Servers from stratum 3 all the way down to stratum 256 synchronize the same way.

The NTP hierarchy is both redundant and fault-tolerant. If a connection to a higher-stratum server fails, backup servers perform the synchronization themselves. Redundancy is provided by the constant availability of NTP servers; by drawing data from multiple sources (servers), the NTP can calculate a more accurate time.

Для чего нужно корректировать часы

  • Чтобы избежать вчерашних новостей и публикаций завтрашнего дня. К примеру часы вашего сервера идут по времени Хабаровска, а основные посетители из Европы (разница UTC+11). В такой ситуации вечерний посетитель увидит «завтрашние» даты на сайте. Так как когда в Европе вечер, то в Хабаровске утро следующего дня.
  • Чтобы было удобно настраивать задания Cron.
  • Чтобы время создания файлов совпадало с фактическим и не вводило Вас в заблуждение.

Эти статьи будут Вам интересны

LAMP-Stack сервер: ещё одна инструкция по настройке Linux + Apache + MySQL + PHP + phpMyAdmin на Ubuntu 18. Установка с помощью Tasksel.

22 октября 2018 ВК Tw Fb

Ещё одна — потому что в Интернете существует уже 100500 таких инструкций. А чем мы хуже? Настраиваем легендарную связку Linux + Apache + MySQL + PHP + phpMyAdmin на чистой Ubuntu 18 старым дедовским способом. А потом посмотрим, что нам даёт инструмент Tasksel. Если Вы любите хардкор, то у нас есть инструкция по созданию WEB-сервера на основе FreeBSD. Эта настройка подойдёт скорее для выполнения университетских лабораторных работ, нежели для продакшна. Но это тот минимум, который позволит использовать все перечисленные в заголовке компоненты.

Получение доступа к операционной системе навигатора (Windows CE 6.0)

Эмуляторы для тестирования и отладки приложений Windows CE 6.0 — это, конечно, хорошо, но нет ничего лучше реального железа. Покупать каждый раз целевые устройства более чем за 1000 долларов нерентабельно (да и просто мы жадные), поэтому отладку ПО можно производить на дешёвых устройствах. Для этих целей мы приобрели GPS навигатор за 1500 рублей. В навигатор зашито программное обеспечение вендора, из-за которого ни операционной системы, ни файловой системы не видно. При подключении к ПК устройство определяется как флеш-накопитель, что не очень нам подходит. Решаем эту проблему в несколько кликов!

Читайте так же:
Регулировка тормозов на легковом прицепе

Запуск Google Chrome в полноэкранном режиме

14 октября 2016 ВК Tw Fb

Одному из наших клиентов (сеть пиццерий) было необходимо, чтобы на мониторах в залах при запуске Windows на весь экран открывалась определённая страница в Интернете. Проще простого.

База знаний «Try 2 Fix» Beta

Все материалы свободны
к распространению с обязательным
указанием источника

Как установить часовой пояс на CentOS 7

FavoriteДобавить в избранное

Главное меню » Операционная система CentOS » Как установить часовой пояс на CentOS 7

Как установить часовой пояс на CentOS 7

Для того, чтобы установить время и дату на CentOS 7 мы будем использовать команду timedatectl. Это утилита, которая распространяется как часть системы Systemd и сервис-менеджер. Команда timedatectl имеет следующие особенности:

  • Обзор текущей даты и времени
  • Изменение даты и времени
  • Установка часового пояса системы
  • Включение автоматической синхронизации системных часов с удаленным сервером

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

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

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

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

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

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

Здесь вы можете заменить Europe/Moscow с именем часового пояса, который вы хотите установить. Используйте команду timedatectl еще раз, чтобы просмотреть изменения.

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

Например, чтобы установить текущую дату 09-09-2016 и текущее время 16:20:00, используйте команду ниже:

Более подробную информацию о том, как использовать команду timedatectl вы можете найти с помощью использования флага -help:

Как установить часовой пояс на CentOS 7

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

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

Рейтинг статьи
Ссылка на основную публикацию