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

Возможно Вам будет интересно узнать, как неправильно установленные время и дата, могут повлиять на Ваш компьютер. Большинство пользователей скажут:"Возможно нет ничего серьезного", но оказывается, это может привести к серьезным проблемам: Часы в Офисе и Вне Офиса - 3CX Phone System предлагает пользователям функцию Планирования рабочих часов, с автоматическим переключением на статусы Нет на месте / Вне

Skip to content

Настройка Правильного Времени на Вашем Windows Сервере – Почему это важно?

Blog Author

Posted on April 22nd, 2014 by Игорь Снежко, Customer Support Regional Manager — Russia & Ukraine

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

  • Часы в Офисе и Вне Офиса – 3CX Phone System предлагает пользователям функцию Планирования рабочих часов, с автоматическим переключением на статусы Нет на месте / Вне офиса. Эта функция зависит от правильно установленного времени. В случае если, время на Вашем компьютере установлено неправильно, это отразится на ее функциональности. 3CX Phone System будет выполнять эти функции, основываясь на время установленное в Windows. Если время в Windows сконфигурировано ошибочно, то Вы будете удивлены, что Ваши статусы переключаются на Вне офиса / Нет на месте на час раньше .
  • Выход и Вход Агентов в Очередь  3CX Phone System позволяет пользователям автоматически Входить и Выходить из системы, полагаясь на настройки Часов Работы. Это крайне важно иметь правильное время, т.к. Администратор устанавливает время для опций “Выход из очередей, когда Вас нет на месте / Вне офиса”, полагаясь на настройки Рабочих Часов.
  • Инсталляция и Сертификаты SSL – Если время установлено неверно, сертификаты установки / или SSL – сертификаты могут быть идентифицированы неправильно, что может создать проблемы в использовании 3CX Phone System на Вашем Windows.
  • Клиенты HTTP –  Клиенты HTTP также могут иметь проблемы с подключением, если время было установлено ошибочно.
  • Проблемы Истории Вызовов – Эта проблема возникнет, т.к. эта опция основана на корректно установленном времени. История Вызовов не работает в установленном порядке, если время синхронизировано неправильно.

Настройка Правильного Времени на Вашем Сервере Windows

Для того чтобы установить правильное время в Windows, совершите следующие действия:Настройка Правильного Времени на Вашем Сервере Windows

  1. Кликните на настройки времени в области уведомлений на панели задач, для выноса панели настроек времени, так как показано наверху. Затем кликните на Изменение настроек даты и времени.Изменение настроек даты и времени
  2. Во вкладке Дата и Время, кликните на Изменить часовой пояс в секции Часовые Пояса.Изменить часовой пояс
  3. Выберите правильный часовой пояс для Вашего местонахождения, кликом на список под полем Часовой Пояс и удостоверьтесь, что функция Автоматический переход на летнее время и обратно отмечена галочкой. Эта функция будет автоматически обновлять время, в зависимости от перехода на летнее время. Нажмите OK чтобы установить и сохранить.
  4. Вернитесь к вкладке Дата и Время. Кликните на кнопку Изменить дату и время.Выберите правильное время
  5. Выберите правильное время (введите в поле под имиджем аналогового циферблата) и дату, ( кликните на желаемую дату из календаря). Нажмите OK когда будет готово.
  6. После этого выберите кнопку Время Интернета и кликните на Изменить Настройки.
    Синхронизация с Интернет Сервером Времени
  7. Удостоверьтесь, что Синхронизация с Интернет Сервером Времени отмечена флажком и выберите сервер из выпадающего списка под полем “Сервер“. После выбора временного сервера, кликните на ‘Обновить сейчас’.  Должно появиться сообщение, оповещающее Вас о том, что часы были синхронизированы, как показано наверху. Кликните на OK, чтобы вернуться к настройкам Даты и времени.
  8. Сейчас Вы установили правильное время и дату на Вашем Windows.  Эта процедура гарантирует, что время на Вашем  Windows установлено правильно и что все обновления перехода на летнее время для Вашего часового пояса применены правильно, что избавит Вас от многих проблем в будущем.

Дополнительное Устранение Проблем

Если Вы уже попробовали процедуру, описанную в Установке правильного времени на Windows и Ваше время не изменилось на правильное, тогда возможно у Вас существуют следующие проблемы:

  • Встроенные Часы Реального Времени ПК неисправны.
  • Требуется замена батареи материнской платы, т.к. она не заряжается и не может обновлять время на Вашей материнской плате.
  • Дефектный источник питания (чрезвычайно редкая проблема).
  • Если изображение было восстановлено с другого компьютера, то возможно файл ‘Hal.dll’ будет несовместим  из-за другого CPU, отличающегося от компьютера с которого был взято изображение. В этом случае, Вам нужно установить  заново оперативную систему на Вашем компьютере.

Похожие записи

Page load link

Содержание

  1. Разрешить пользователям Windows менять системное время
  2. Редактируем групповые политики локально
  3. Редактируем групповые политики в домене
  4. Сбивается время компьютера (сервера) после выключения / перезагрузки
  5. Не сохраняется время из-за севшей батарейка BIOS
  6. Настройки часового пояса и синхронизации времени с time.windows.com
  7. Синхронизация времени в домене Windows
  8. Сбивается время при переключении между Linux и Windows (Dual Boot)
  9. Сбивается время после перезагрузки на серверах HP с Windows Server
  10. Не верно устанавливается время Windows server через NTP.

Разрешить пользователям Windows менять системное время

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

Редактируем групповые политики локально

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

  1. Нажав клавиши Win+R , набираете gpedit.msc . Нажимаете Enter .
  2. В открывшемся окне, в древе слева выбираем «Конфигурация компьютераПолитикиКонфигурация WindowsПараметры безопасностиЛокальные политикиПредоставление прав пользователям«.
  3. В списке ищем «Изменение системного времени«, нажимаем правой кнопкой и открываем Свойства. Там ставим галочку на «Определить следующие параметры политики» и выбираем нужных пользователей по их именам или по группам.

Редактируем групповые политики в домене

Открываем «Управление групповой политикой» (Панель управленияАдминистрированиеУправление групповой политикой). Если нужно, то создаем новый объект групповой политики, в противном случае редактируем уже существующий.

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

Сбивается время компьютера (сервера) после выключения / перезагрузки

В этой статье рассмотрим, почему после выключения или перезагрузки ноутбука / компьютера / сервера в операционной системе могут сбрасываться текущие настройки даты и времени, указанные ранее. Рассмотрим, как самый банальный случая с севшей батарейкой BIOS, так и более интересные кейсы с мультизагрузкой Windows и Linux на одном компьютере, и багом прошивки на Windows серверах HPE ProLiant G9 /G8.

Не сохраняется время из-за севшей батарейка BIOS

Самый «классический» ответ на вопрос «Почему не сохраняется и сбивается время и дата на компьютере?» — севшая батарейка BIOS. Данная батарейка отвечает за сохранение настроек BIOS/ UEFI, когда ваш компьютер/ноутбук выключен из розетки, а также обеспечивает автономную работу встроенных аппаратных часов.

Если батарейка села, то при отключении питания материнской карты, BIOS не может сохранить свои настройки, и все они сбрасываются, в том числе и текущее дата и время. Если ваш компьютер довольно старый, вероятность того, что у вас села батарейка крайне велика. Настоятельно рекомендуем ее заменить. Сделать это не сложно, и, как правило, особых инженерных навыков процесс замены батарейки BIOS не требует. В большинстве домашних систем используется в BIOS стандартная батарейка CR2032 на 3 вольта.

Если замена батарейки не помогла, проверьте состояние перемычки сброса настроек BIOS (джампер с перемычкой расположен рядом с отсеком для батарейки и может быть подписан как CCMOS / CLEAR / RESET). Возможно кто-то оставил данный джампер в положении «сброса», в результате чего при каждой подачи питания на мат.плату, настройки BIOS обнуляются. Верните джампер в нормальное положение.

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

Настройки часового пояса и синхронизации времени с time.windows.com

В том случае, если у вас постоянно меняются настройки даты//времени в Windows, в первую очередь стоит проверить текущие настройки часового пояса и параметры синхронизации времени с интернетом. В Windows 10 текущие настройки времени можно посмотреть в меню панели инструментов (Панель управленияЧасы, язык и регион -> Дата и время). В этом примере видно, что указан часовой пояс UTC + 03, переход на зимнее время отключен.

Если ваш компьютер не в домене, проверьте настройки синхронизации времени с внешним источником времени (сервером времени NTP). В этом случае в этом же окне щелкните по вкладке «Время по Интернету» и проверьте, что компьютер настроен на автоматическую синхронизацию времени с сервером time.windows.com.

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

Если ваш компьютер входит в состав домена Active Directory, то информацию о том как работает синхронизация времени в домене можно получить из этой статьи.

Сбивается время при переключении между Linux и Windows (Dual Boot)

Отдельно стоит рассмотреть конфигурации, когда на компьютере установлены две операционные системы (Windows и Linux) в конфигурации двойной загрузки (Dual Boot). Вы можете столкнуться с проблемой, что после переключения между операционными системами (загрузки в Linux после Windows) сбивается время на несколько часов вперед или назад.

Windows и Linux по разному работают с временем BIOS. Дело тут в наличии двух форматов представления времени UTC и localtime.

Операционные системы GNU/Linux (в том числе Mac OS X) считают, что время в BIOS указано в формате UTC (по Гринвичу). Соответственно, при загрузке Linux для преобразования UTC к локальному времени добавляет (отнимает) смещение текущего часового пояса, который выбрал пользователь. Т.е. чтобы получить локальное время для часового пояса Москвы UTC+3, Linux добавит 3 часа.

Windows же считает, что в время в BIOS хранится в формате localtime, и если вы указали новый часовой пояс, или синхронизировали время с внешним источником, система соответственным образом меняет время в BIOS на локальное время. Linux (Ubuntu в моем случае) считает, что время в BIOS указано в формате UTC и дополнительно добавляет смещение часового пояса. Именно поэтому и сбивается время при переключении между Linux и Windows.

Чтобы исправить такую ситуацию, нужно переключить Windows на использование времени в формате UTC с помощью параметра реестра RealTimeIsUniversal.

reg add «HKLMACHINESystemCurrentControlSetControlTimeZoneInformation» /v RealTimeIsUniversal /t REG_DWORD /d 1 /f

Также в Windows нужно отключить обновление времени из Интернета, т.к. служба времени Windows при каждом обновлении времени будет сбрасывать UTC время на локальное.

sc config w32time start= disabled

Осталось перезагрузить Windows.

Либо можно переключить Linux на использование локального времени. В Ubuntu 15.04 и выше и CentOS это можно сделать командой timedatectl:

timedatectl set-local-rtc 1

Сбивается время после перезагрузки на серверах HP с Windows Server

На серверах HPE DL/ML Gen9 с Windows Server 2008 R2 / 2012 R2 у одного из удаленных заказчиков столкнулись с интересной проблемой после смены часового пояса. Как оказалось, на серверах HP ProLiant Gen9 (и на одном из серверов HP ProLiant DL580 Gen8) при изменении системного времени или часового пояса, после перезагрузки сервера, системное время не сохранялось и сбрасывалось на предыдущее. Проблема были подвержены сервера, в которых Windows Server загружается в режиме Legacy (при нативной UEFI загрузки проблемы отката времени не было).

В журнале системы при этом появлялось такое событие:

The system time has changed to ‎2018‎-‎04‎-‎29T12:12:28.500000000Z from ‎2018-‎04‎-‎29T13:12:27.923115700Z.
Change Reason: System time synchronized with the hardware clock.

В качестве решения проблемы HP предлагает обновить ROM до версии не менее 1.5. Именно в этой версии ROM-Based Setup Utility (RBSU) не подвержена багу со сбросом временм.

Либо в качестве обходного решения, можно указать, чтобы Windows считала, что BIOS отдает ей системное время в формате UTC (а не локальное время). Для этого, как мы уже говорили выше нужно создать в ключе реестра HKLMSYSTEMCurrentControlSetControlTimeZoneInformation параметр с именем RealTimeIsUniversal и значением 1.

Не верно устанавливается время Windows server через NTP.

Все новые темы

Автор
NekSt
Новичок

Зарегистрирован: 09.01.2019
Пользователь #: 170,273
Сообщения: 5

Добавлено: Ср 09 Янв, 2019 9:39 Заголовок сообщения: Не верно устанавливается время Windows server через NTP.
Вернуться к началу

Зарегистрируйтесь и реклама исчезнет!

Andrei9385
Активный участник

Зарегистрирован: 31.10.2018
Пользователь #: 169,774
Сообщения: 535


Голоса: 7

Добавлено: Ср 09 Янв, 2019 9:47 Заголовок сообщения:
Вернуться к началу

NekSt
Новичок

Зарегистрирован: 09.01.2019
Пользователь #: 170,273
Сообщения: 5

Добавлено: Ср 09 Янв, 2019 10:07 Заголовок сообщения:
Вернуться к началу

Andrei9385
Активный участник

Зарегистрирован: 31.10.2018
Пользователь #: 169,774
Сообщения: 535


Голоса: 7

Добавлено: Ср 09 Янв, 2019 10:10 Заголовок сообщения:
Вернуться к началу

karavan750
Житель sysadmins

Зарегистрирован: 22.01.2016
Пользователь #: 160,064
Сообщения: 8962


Голоса: 97

Добавлено: Ср 09 Янв, 2019 10:10 Заголовок сообщения:
_________________
Как правильно задавать вопросы
NixOS — чот я запал на эту системку.
Вернуться к началу

FIL-23
Активный участник

Зарегистрирован: 26.03.2008
Пользователь #: 68,249
Сообщения: 672


Голоса: 3

Добавлено: Ср 09 Янв, 2019 10:12 Заголовок сообщения:
_________________
Если бы, программы работали как задумано, то ни о какой профессии как «системный администратор» не было бы и речи.
Вернуться к началу

NekSt
Новичок

Зарегистрирован: 09.01.2019
Пользователь #: 170,273
Сообщения: 5

Добавлено: Ср 09 Янв, 2019 10:25 Заголовок сообщения:
Вернуться к началу

NekSt
Новичок

Зарегистрирован: 09.01.2019
Пользователь #: 170,273
Сообщения: 5

Добавлено: Ср 09 Янв, 2019 11:45 Заголовок сообщения:
Вернуться к началу

NekSt
Новичок

Зарегистрирован: 09.01.2019
Пользователь #: 170,273
Сообщения: 5

Adblock
detector

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

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

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

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

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

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

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

Утилита date

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

date

ubuntu date

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

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

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

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

date +"%H:%M %d/%m/%Y"
14:09 26/03/2021

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

date +"%H:%M %d/%m/%Y %j"
14:13 26/03/2021 085

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

date '+%s'
1616768183

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

date --utc

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

date +%Y-%m-%d
2021-03-26
date +%H:%M:%S
14:36:35
date +%Y-%m-%d_%H:%M:%S
2021-03-26_14:36:42

вывод времени с помощью date

Утилита timedatectl

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

timedatectl

ubuntu timedatectl

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

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

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

sudo date 03261721
[sudo] password for user: 
Fri 26 Mar 2021 05:21:00 PM UTC

Настройка времени в ubuntu

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

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

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

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

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

sudo locale-gen ru_RU.UTF-8
sudo update-locale LANG=en_US.UTF-8 LC_TIME="ru_RU.UTF-8"

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

формат времени 12 или 24 часа

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

sudo timedatectl set-time "2021-03-26 18:09:30"

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

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

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

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

timedatectl list-timezones

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

timedatectl list-timezones | grep Europe

Список часовых поясов

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

sudo timedatectl set-timezone Europe/Moscow

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

tzselect

Настройка часового пояса в Ubuntu

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

ls -la /etc/localtime
lrwxrwxrwx 1 root root 35 мар 26 18:19 /etc/localtime -> ../usr/share/zoneinfo/Europe/Moscow

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

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

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

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

sudo apt install ntpdate

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

sudo ntpdate pool.ntp.org

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

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

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

timedatectl timesync-status

Статус timesynctd

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

Клиент ntp

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

sudo systemctl stop systemd-timesyncd
sudo systemctl disable systemd-timesyncd

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

sudo apt install ntp

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

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

sudo systemctl enable --now ntp

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

sudo systemctl status ntp

ntp client

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

ntpq -p

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

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

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

sudo ufw allow ntp

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

driftfile /var/lib/ntp/ntp.drift
restrict -4 default kod notrap nomodify nopeer noquery limited
restrict 127.0.0.1
restrict 10.20.1.0 mask 255.255.255.0 nomodify notrap

pool 0.ubuntu.pool.ntp.org iburst
pool 1.ubuntu.pool.ntp.org iburst
pool 2.ubuntu.pool.ntp.org iburst
pool 3.ubuntu.pool.ntp.org iburst

logfile /var/log/ntp.log

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

NTPD_OPTS='-4 -g'

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

sudo ss -tulnp | grep ntp

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

Служба времени слушает все сетевые интерфейсы. Теперь с любого клиента в локальной сети можно выполнить с помощью 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 порт.

ntpdate -u pool.ntp.org

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

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

sudo timedatectl set-ntp no

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

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

sudo timedatectl set-local-rtc 1

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

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

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

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

uptime
uptime -s

Время работы сервера

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

who -b
system boot 2021-03-26 17:01

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

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

last -x reboot

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

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

Заключение

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

Часто мы сталкиваемся с необходимостью сменить системное время и дату. Например, при переходе на летнее время или в поездке в местность с другим часовым поясом. На сегодняшний день переход на летнее в России отменен. Если автоматический переход на летнее время все же производится, нужно снять галочку в настройках даты и времени «Автоматический переход на летнее время и обратно». Однако, операционные системы многих пользователей не обновлены, такой галочки в настройках нет и данный переход осуществляется в автоматическом режиме.

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

Изменение системных даты и времени в операционной системе Windows

Меняем дату и время через параметры даты и времени

Независимо от версии Windows можно сменить дату и время, щелкнув левой кнопкой мыши по часам в правом нижнем углу либо открыть Панель инструментов. В версиях более ранних, Windows 10, необходимо выбрать «Изменение настроек даты и времени», в Windows 10 для изменения даты и времени необходимо открыть «Параметры даты и времени». При этом может потребоваться ввод пароля администратора системы.

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

sistemnyx-daty-i-vremeni-1

sistemnyx-daty-i-vremeni-2

Меняем дату и время через командную строку

Чтобы воспользоваться командной строкой для изменения даты и времени, откройте командную строку с правами администратора. В Windows 7 и более поздних версий просто введите в строке поиска командная строка или cmd, щелкните по результату правой кнопкой мыши и выберите запуск от имени администратора. (подробнее о работе с командной строкой можно прочитать тут).

sistemnyx-daty-i-vremeni-3

sistemnyx-daty-i-vremeni-4

Команда для изменения времени time ЧЧ:ММ:СС (где ЧЧ – часы, ММ – минуты, СС – секунды), введите ее и нажмите Enter на клавиатуре.

Команда для изменения даты date ДД/ММ/ГГГГ (где ДД – день, ММ – месяц, ГГГГ – год), введите ее и нажмите Enter на клавиатуре.

sistemnyx-daty-i-vremeni-5

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

Такой способ удобен, если изменение системных даты и времени необходимы для временной настройки в целях обхода лицензии или использования VPN.

Если вы изменяете системное время для использования VPN, настоятельно рекомендуем зайти для проверки анонимности на whoer.net. Сервис проверки анонимности поможет определить какие именно параметры мешают быть анонимными.

Теперь вы знаете, как изменить системные дату и время. Вам не составит труда изменить системное время таким образом, чтобы сервис проверки анонимности на whoer.net не показывал временные отличия. Соответственно, вы сможете настроить свой компьютер и добиться устранения такого замечания по анонимности и безопасности, как отличие системного времени от временной зоны для вашего IP-адреса. Информация была полезна? Делитесь нашими статьями в социальных сетях.

Покупая, а точнее арендуя, сервер за границей (у зарубежного хостинг-провайдера), Вы наверняка сталкивались с ситуацией, что время на нем не совпадает с вашим. Особенно если вы не устанавливали операционную систему самостоятельно, а развертывали ее из предлагаемого хостером образа. Как правило оно идет по времени дата-центра или по гринвичу. По-совести говоря не принципиально в каком часовом поясе сервер, и что показывают часы. Их показания всегда можно скорректировать. Но, согласитесь, что гораздо приятней, когда сервер находится в вашей временной зоне и/или в зоне большинства посетителей вашего сайта.
В этой статье на примере CentOS (red hat linux) я покажу как удаленно изменить время на сервере с операционной системой Linux. Она будет полезна всем кто администрирует Linux server.

Какие часы бывают в Linux

Немного теории. В любом компьютере есть два вида часов. Одни аппаратные (ЧРВ — часы реального времени или RTC — real time clock), которые работают даже при выключенном блоке питания, на это у них есть батарейка на материнской плате. Другие программные, то есть часы операционной системы. Показания этих часов могут различаться. При этом программные часы опираются на показания аппаратных при старте операционной системы. А в дальнейшем могут синхронизироваться через интернет с эталонными и корректировать ход аппаратных.
В большинстве случаев если компьютер работает под управлением операционной системой Windows показания аппаратных и программных часов совпадают. В linux же чаще всего аппаратные часы настраивают по гринвичу (времени нулевого меридиана), а программные по необходимому смещению для часового пояса где расположен сервер.
Абсолютное большинство программ (приложений и сервисов) в своей работе опираются на показания системных (программных) часов.

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

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

Как настроить время вашего сервера

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

# hwclock
Sun 09 Mar 2014 08:01:03 PM MSK  -0.926999 seconds
# hwclock --localtime
Sun 09 Mar 2014 04:01:16 PM MSK  -0.130659 seconds
# hwclock --utc
Sun 09 Mar 2014 08:01:25 PM MSK  -0.411394 seconds

Приведенный пример для случая когда аппаратные часы идут по UTC, а сервер настроен на Московский часовой пояс. Особых пояснений требует опция —utc вывод времени производится (формируется) с условием, что аппаратные часы идут по времени UTC. То есть показания должны совпадать с желаемым временем на сервере. Опция же —localtime наоборот показывает время аппаратных часов без всяких поправок.

Несколько полезных команд установки времени аппаратных часов

Устанавливаем время аппаратных часов равное системному:

# hwclock --systohc

Устанавливаем время системных часов на основании ЧРВ:

# hwclock --hctosys

Устанавливаем время равное указанному:

# hwclock --set --date "09 Jan 2012 14:11"

Значение временной зоны

Данные временной зоны для аппаратных часов в Centos хранятся в файле /etc/sysconfig/clock.
Для московской временной зоны в случае когда аппаратные часы идут по UTC он имеет следующее содержимое:

ZONE="Europe/Moscow"
UTC=true
ARC=false

Где ZONE — это наш часовой пояс, UTC говорит о том, что аппаратные часы сервера идут по универсальному времени UTC, ARC в значении false — значит используется нормальное значение века (эпохи) UNIX.
Подробнее по конфигурации файла /etc/sysconfig/clock в CentOS можно почитать в официальной документации.

Системные часы операционной системы CentOS

Для системных (программных) часов CentOS используется команда date.

# date
Tue Mar 18 16:08:04 MSK 2014
# date --utc
Tue Mar 18 12:08:10 UTC 2014

Приведенный пример для случая когда операционная система использует Московский часовой пояс. Здесь опция —utc говорит, что необходимо показать время нулевого меридиана, то есть без поправок на часовой пояс.

Изменение временной зоны (часового пояса) в CentOS

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

# mv /etc/localtime /etc/localtime.bak

Это хорошая практика, когда вы делаете резервные копии оригинальных файлов конфигурации 🙂

Затем, создаем ссылку на необходимую временную зону.

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

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

# date MMDDhhmm

где MM – месяц, DD – день, hh – час, mm – минуты.
То есть чтобы задать, к примеру, 18 марта 20 часов 15 минут, нужно ввести следующее:

# date 03182015

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

# man date

Настройка сервера времени ntp

Со временем часы могут убегать или отставать, поэтому время от времени их нужно синхронизировать с эталонными. Для этого в CentOS используется демон ntpd.
Установим демон ntpd если его нет в системе:

# yum install ntp

Однократно синхронизируем время:

# ntpdate pool.ntp.org

Если получили что-то вроде the NTP socket is in use, exiting — значит ntpd демон уже запущен. В этом случае остановим его:

# service stop ntpd

Настраиваем работу ЧРВ в BIOS на время по UTC:

# hwclock --systohc --utc

Этой командой мы присвоили значение времени аппаратных часов равным системному времени. Как вы помните, системные часы мы синхронизировали командами выше.
Проверим содержимое файла /etc/sysconfig/clock чтобы система после загрузки правильно выставляла местное время. Для Москвы он должен содержать следующее:

ZONE="Europe/Moscow"
UTC=true
ARC=false

Настраиваем демон ntpd на автозагрузку при старте операционной системы:

# chkconfig ntpd on

Запускаем демон синхронизации времени:

# service ntpd start

Проверяем системное время командой:

# date

Оно должно совпадать с реальным.
Проверим, синхронизируется ли системное время с серверами эталонного времени (ntp server) и все ли там в порядке командой ntpq -p:

# ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 test.danzuck.ch 162.23.41.56     2 u    1   64    1   12.280  -23.298   0.031
 fw.ams.nl.alexs 82.197.221.30    4 u    2   64    1    2.086  -19.002   0.000
 ntp0.mediamatic 193.0.0.229      2 u    1   64    1    0.998  -19.938   0.000
 elara.mysnip.de .INIT.          16 u    -   64    0    0.000    0.000   0.000

Демон ntpd включает в ядре Linux режим «11 minute mode». В этом режиме каждые 11 минут синхронизируются системные и аппаратные часы. По-умолчанию он (режим «11 minute mode») выключен и включается только когда какой-то сервис попросит включить этот режим. Демон ntpd как раз его и (режим «11 minute mode») включает. Так что дополнительно синхронизировать аппаратные часы по значению системных нет необходимости.
P.S. Теперь системные и аппаратные часы вашего сервера будут автоматически синхронизироваться с эталонными серверами и всегда показывать точное время.

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

  1. Change Timezone in CentOS
  2. Автозапуск сервисов в CentOS/RHEL
  3. Время в linux. UTC или localtime?
  4. Настройка времени в Bitrix VM (CentOS)

В статье мы разберёмся с тем, как настроить время в Linux. Посмотрим текущее время, укажем часовой пояс и настроим синхронизацию времени.

Чтобы посмотреть текущее время на вашем сервере linux воспользуйтесь командой date:

alex@ubu:~$ date
Ср 13 июл 2022 13:40:27 UTC

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

Также можно использовать другую команду – timedatectl:

alex@s-ubu:~$ timedatectl
               Local time: Ср 2022-07-20 07:56:41 UTC
           Universal time: Ср 2022-07-20 07:56:41 UTC
                 RTC time: Ср 2022-07-20 07:56:41
                Time zone: UTC (UTC, +0000)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no

Без опций она покажет текущее время, часовой пояс, а также другую информацию связанную с синхронизацией времени. Например в примере выше видно что время успешно синхронизуется (System clock synchronized: yes) и синхронизация настроена (NTP service: active).

С помощью этой же утилиты (timedatectl) мы будем настраивать часовой пояс и следить за синхронизацией времени, об этом чуть ниже.

Настройка часового пояса

Вообще часовой пояс в системе определяется файлом /etc/localtime, который является символьной ссылкой (про ссылки я уже писал):

alex@ubu:~$ ls -l /etc/localtime
lrwxrwxrwx 1 root root 27 апр 21 01:01 /etc/localtime -> /usr/share/zoneinfo/Etc/UTC

Можно вручную отредактировать эту ссылку и указать нужный часовой пояс:

alex@ubu:~$ sudo ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime

Или воспользоваться утилитой timedatectl:

alex@ubu:~$ sudo timedatectl set-timezone Europe/Moscow

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

alex@ubu:~$ timedatectl list-timezones

Проверим время и часовой пояс:

alex@ubu:~$ timedatectl
               Local time: Ср 2022-07-13 16:50:39 MSK
           Universal time: Ср 2022-07-13 13:50:39 UTC
                 RTC time: Ср 2022-07-13 13:50:39
                Time zone: Europe/Moscow (MSK, +0300)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no

Как видим, часовой пояс уже изменился на Europe/Moscow (MSK, +0300).

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

В настоящее время очень важно чтобы часы на ваших серверах были синхронизированы. Очень много систем полагаются на время, например:

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

Получение списка NTP серверов по DHCP

Если ваш сервер получает сетевые настройки по dhcp, то он может получить список NTP серверов (серверов времени для синхронизации). Это настраивается в файле /etc/dhcp/dhclient.conf. В строке request мы определяем что хотим получать от сервера dhcp. И здесь может быть указан параметр ntp-servers:

alex@ubu:~$ cat /etc/dhcp/dhclient.conf
# часть текста пропустил
request subnet-mask, broadcast-address, time-offset, routers,
        domain-name, domain-name-servers, domain-search, host-name,
        dhcp6.name-servers, dhcp6.domain-search, dhcp6.fqdn, dhcp6.sntp-servers,
        netbios-name-servers, netbios-scope, interface-mtu,
        rfc3442-classless-static-routes, ntp-servers;
# часть текста пропустил

Само собой, вы получите список ntp-серверов, только в том случае если ваш dhcp сервер их распространяет.

Служба синхронизации времени

В системах работающих на systemd работает специальная служба синхронизации времени systemd-timesyncd.service. Можем посмотреть её статус:

alex@ubu:~$ systemctl status systemd-timesyncd.service
● systemd-timesyncd.service - Network Time Synchronization
     Loaded: loaded (/lib/systemd/system/systemd-timesyncd.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2022-07-13 17:08:06 MSK; 23s ago
       Docs: man:systemd-timesyncd.service(8)
   Main PID: 399 (systemd-timesyn)
     Status: "Initial synchronization to time server 192.168.0.16:123 (192.168.0.16)."
      Tasks: 2 (limit: 2241)
     Memory: 1.3M
        CPU: 63ms
     CGroup: /system.slice/systemd-timesyncd.service
             └─399 /lib/systemd/systemd-timesyncd

Видим что синхронизация идет с сервером по адресу 192.168.0.16. У меня этот адрес прилетел по dhcp.

Обратите внимание, что служба эта стартует по запросу и останавливается после синхронизации времени!

Давайте выключим получение ntp серверов по dhcp:

alex@ubu:~$ sudo nano /etc/dhcp/dhclient.conf
# в этой строке удалите опцию ntp-servers
request subnet-mask, broadcast-address, time-offset, routers,
        domain-name, domain-name-servers, domain-search, host-name,
        dhcp6.name-servers, dhcp6.domain-search, dhcp6.fqdn, dhcp6.sntp-servers,
        netbios-name-servers, netbios-scope, interface-mtu,
        rfc3442-classless-static-routes;

Вы можете использовать следующий пул серверов времени для синхронизации – https://www.pool.ntp.org/zone/ru. Укажем первый сервер из этого пула в конфиге /etc/systemd/timesyncd.conf:

alex@ubu:~$ sudo nano /etc/systemd/timesyncd.conf
[Time]
NTP=0.ru.pool.ntp.org
FallbackNTP=ntp.ubuntu.com
RootDistanceMaxSec=5
PollIntervalMinSec=32
PollIntervalMaxSec=2048

В конфиге используются следующие опции:

  • NTP – укажите 1 или несколько ntp серверов. Если хотите указать несколько серверов, разделяйте их пробелами;
  • FallbackNTP – укажите 1 или несколько резервных ntp серверов;
  • RootDistanceMaxSec – максимальное время в секундах, за которое пакет от сервера эталонного времени должен доходить до сервера к которому мы подлкючены;
  • PollIntervalMinSec и PollIntervalMaxSec – минимальный и максимальный интервалы синхронизаций времени. Вначале используется минимальный интервал, а затем он увеличивается если система видит что локальное время со временем ntp-сервера не расходится.

После правки перезапустите службу синхронизаций времени:

alex@ubu:~$ sudo systemctl restart systemd-timesyncd.service

Дополнительно можно посмотреть информацию по синхронизации времени с помощью следующей команды:

alex@ubu:~$ timedatectl timesync-status
       Server: 91.209.94.10 (0.ru.pool.ntp.org)
Poll interval: 34min 8s (min: 32s; max 34min 8s)
         Leap: normal
      Version: 4
      Stratum: 2
    Reference: 3EE70662
    Precision: 1us (-25)
Root distance: 4.012ms (max: 5s)
       Offset: -5.502ms
        Delay: 11.084ms
       Jitter: 2.886ms
 Packet count: 7
    Frequency: +15,118ppm

Здесь мы видим адрес ntp-сервера, а также какой интервал синхронизации (34min 8s) использовался последний раз.

То-есть служба синхронизации времени systemd-timesyncd.service будет запускаться и останавливаться сейчас примерно раз в 34 минуты. Поэтому если увидите, что служба в состоянии loaded и inactive, не пугайтесь. По логам видно что она периодически запускается:

alex@ubu:~$ systemctl status systemd-timedated
○ systemd-timedated.service - Time & Date Service
     Loaded: loaded (/lib/systemd/system/systemd-timedated.service; static)
     Active: inactive (dead)
       Docs: man:systemd-timedated.service(8)
             man:localtime(5)
             man:org.freedesktop.timedate1(5)

июл 19 15:54:24 s-ubu systemd[1]: systemd-timedated.service: Deactivated successfully.
июл 19 15:55:41 s-ubu systemd[1]: Starting Time & Date Service...
июл 19 15:55:41 s-ubu systemd[1]: Started Time & Date Service.
июл 19 15:56:35 s-ubu systemd[1]: systemd-timedated.service: Deactivated successfully.
июл 19 16:05:45 s-ubu systemd[1]: Starting Time & Date Service...
июл 19 16:05:45 s-ubu systemd[1]: Started Time & Date Service.
июл 19 16:06:15 s-ubu systemd[1]: systemd-timedated.service: Deactivated successfully.
июл 19 16:28:42 s-ubu systemd[1]: Starting Time & Date Service...
июл 19 16:28:42 s-ubu systemd[1]: Started Time & Date Service.
июл 19 16:30:17 s-ubu systemd[1]: systemd-timedated.service: Deactivated successfully.

Из вывода:

  • Deactivated successfully – служба останавливается;
  • Starting Time & Date Service… – служба стартует;
  • Started Time & Date Service – служба стартовала;
  • и так по кругу.

Ещё один способ задать часовой пояс

С помощью команды dpkg-reconfigure tzdata также можно задать часовой пояс:

alex@ubu:~$ sudo dpkg-reconfigure tzdata

После выполнения вы можете использовать псевдографический интерфейс для настройки часового пояса. Вначале выберите географический район:

dpkg-reconfigure tzdata - выбор географического района

dpkg-reconfigure tzdata – выбор географического района

Затем город:

dpkg-reconfigure tzdata - выбор города

dpkg-reconfigure tzdata – выбор города

Итог

Теперь вы знаете как настроить время на сервере Debian или Ubuntu. Мы научились устанавливать часовой пояс и настраивать синхронизации времени с ntp серверами.

Узнали про следующие команды:

  • date – покажет текущую дату, время и часовой пояс;
  • timedatectl – покажет тоже самое что и date + синхронизуется ли время;
  • timedatectl list-timezones – покажет список поддерживаемых часовых поясов;
  • timedatectl set-timezone Europe/Moscow – установить часовой пояс Europe/Moscow;
  • timedatectl timesync-status – покажет с какими ntp-серверами синхронизуется время и как часто;
  • dpkg-reconfigure tzdata – установить часовой пояс.

Познакомились с файлами:

  • /etc/localtime – является символической ссылкой и содержит информацию о текущем часовом поясе;
  • /etc/dhcp/dhclient.conf – настройки dhcp-клиента, который умеет запрашивать ntp-сервера для синхронизации времени;
  • /etc/systemd/timesyncd.conf – настройки службы синхронизации времени.

Узнали про службу синхронизации времени:

  • systemd-timedated.service – стартует по запросу, а после синхронизации времени отключается до следующей синхронизации.

Сводка

Дата, время и часовой пояс в Linux

Имя статьи

Дата, время и часовой пояс в Linux

Описание

В статье мы разберёмся с тем, как настроить время в Linux. Посмотрим текущее время, укажем часовой пояс и настроим синхронизацию времени

Оригинал:

«Set Time, Date Timezone in Linux from Command Line or Gnome | Use ntp»

Автор: Guillermo Garron

Дата публикации: 4 April 2012

Перевод: Н.Ромоданов

Дата перевода: апрель 2012 г.

В системе Linux очень важно иметь правильное время и дату, поскольку от этого зависит многое. Причем неважно, используете ли вы систему Linux на своем персональном компьютере или у вас Linux-сервер. Серверные и системные часы должны указывать правильное время.

Установка даты из командной строки

date +%Y%m%d -s "20120418"

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

date +%T -s "11:14:00"

Установка времени и даты из командной строки

date -s "19 APR 2012 11:14:00"

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

date

Вы увидите что-то вроде следующего:

Thu Apr 19 15:17:34 BOT 2012

Установка аппаратных часов

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

Мы можем увидеть различие между аппаратными и системными часами

hwclock --show

Вы увидите что-то вроде следующего:

Thu 19 Apr 2012 03:23:05 PM BOT  -0.785086 seconds

Теперь проверьте системные часы

date

Вы увидите что-то вроде следующего:

Thu Apr 19 15:26:41 BOT 2012

Давайте установим аппаратные часы по местному времени:

hwclock --set --date="2012-04-19 16:45:05" --localtime

Если вы хотите установить их на использование времени по Гринвичу (UTC):

hwclock --set --date="2011-04-19 20:45:05"  --utc

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

Чтобы в ваших системных часах установить часовой пояс, выполните следующее:

cp /usr/share/zoneinfo/America/La_Paz /etc/localtime

Правильно укажите ваш часовой пояс.

Автоматическая регулировка часов

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

Отредактируйте файл /etc/ntpd.conf. Он будет выглядеть следующим образом:

# С параметрами по умолчанию, устанавливаемыми ниже, программа ntpd будет выполнять синхронизацию ваших часов.
#
# Подробности смотрите:
# - страница man  для ntp.conf
# - http://support.ntp.org/bin/view/Support/GettingStarted
# - https://wiki.archlinux.org/index.php/Network_Time_Protocol_daemon

# Используемые общедоступные сервера пулов NTP; смотрите http://www.pool.ntp.org/
server 0.pool.ntp.org
server 1.pool.ntp.org
server 2.pool.ntp.org

# Доступ на чтение только из localhost
restrict default noquery nopeer
restrict 127.0.0.1
restrict ::1

# Месторасположение файлов drift и log
driftfile /var/lib/ntp/ntp.drift
logfile /var/log/ntp.log

# ЗАМЕЧАНИЕ: Если у вас работает программа dhcpcd и у вас указаны строки такие как 'restrict' и 'fudge', указываемые
# здесь, удостоверьтесь, что в /etc/conf.d/net для перемннных dhcpcd_ethX добавлены параметры  '-Y -N'

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

Для Arch Linux это: /etc/rc.d/ntpd start ; для Debian и производных систем: /etc/init.d/ntpd start

Обновление из командной строки времени по значению, получаемому с сервера времени

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

ntpdate 129.6.15.28

Вы получите что-то вроде следующего:

19 Apr 15:45:23 ntpdate[10948]: step time server 129.6.15.28 offset -45.697084 sec

Бонус: Установка времени и даты в Gnome

Если вы используете Gnome, щелкните правой кнопкой мыши по
изображению часов и выберите пункт настройки adjust, или в меню
выберите пункт System > Administration > Time and Date (Система > Администрирование > Время и дата). Вам, возможно, будет предложено ввести пароль.

Вы увидите окно, похожее на следующее:

Или

Если вам понравилась статья, поделитесь ею с друзьями:


Понравилась статья? Поделить с друзьями:

Читайте также:

  • Как изменить сири на другой голос
  • Как изменить сири на алису
  • Как изменить сиреневый цвет
  • Как изменить синусоиду бензинового генератора
  • Как изменить синус на косинус

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии