Как изменить время на убунту

Приветствую Всех!

Приветствую Всех!

В этой статье я расскажу как изменить дату и время в Linux Ubuntu. Сделать это мы сможем двумя способами.

Рассмотрим первый способ изменить дату и время.

Через панель быстрого запуска открываем «Параметры системы» и выбираем «Время и дата».

как изменить дата и время linux ubuntu

В открывшемся окне мы видим карту мира. На ней указанны часовые пояса. Кликнув левой кнопкой мыши по необходимому нам часовому поясу, он будет подсвечен, в поле «Местоположение» мы видим выбранный часовой пояс.

как изменить дата и время linux ubuntu

Время в Linux Ubuntu по умолчанию синхронизируется со специальными серверами точного времени. Подключение к данным серверам производится по протоколу сетевого времени NTP.
И в большинстве случаев самому менять ничего не надо. Если ваш компьютер подключен к сети Интернет, то операционная система сама подкорректирует дату и время.
Но если у вас появилась такая необходимость изменить дату и время, то указываем системе «Установить время» вручную и выбираем необходимые нам дату и время.

как изменить дата и время linux ubuntu

Второй способ изменить дату и время.

Рассмотрим как изменить часовой пояс. Откроем терминал и запустим следующую команду.

sudo dpkg-reconfigure tzdata

как изменить дата и время linux ubuntu

Для получения дополнительных привилегий необходимо ввести пароль пользователя и нажать на клавиатуре клавишу «Enter».

как изменить дата и время linux ubuntu

Выбираем географический район, в моем случае это «Европа» и нажимаем на клавиатуре клавишу «Enter».

как изменить дата и время linux ubuntu

В следующем окне выбираем часовой пояс. Я выбрал «Москва» и также нажимаем на клавиатуре клавишу «Enter».

как изменить дата и время linux ubuntu

В терминале видим установленную временную зону и текущее время

как изменить дата и время linux ubuntu

Для просмотра текущей даты и времени в терминале надо ввести следующую команду

data

как изменить дата и время linux ubuntu

А для того чтобы, например, установить дату 15 декабря 2015 года и время 20 часов 10 минут вводим команду

sudo data 201520102015.00

как изменить дата и время linux ubuntu

date MMDDhhmmCCYY.ss
MM — месяц, DD — день месяца, hh — часы, mm — минуты, CCYY — 4 цифры года, ss — секунды

Мы рассмотрели как можно изменить часовой пояс, а также изменить дату и время в Linux Ubuntu. И если остались непонятные вопросы по данной это теме и есть предложения, то прошу их писать в комментариях. Всем пока!

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

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

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

Проверьте текущее время

Вы можете проверить текущее время и дату, используя команду date и timedatectl.

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

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

Использование команды date

Войдите в систему как пользователь root и используйте команду следующим образом:

$ date

Вывод:

 Вт фев 5 15:16:04 MSK 2019 

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

$ date --date="2 days ago"

Использование команды timedatectl

Для проверки состояния времени в вашей системе, а также текущих настроек времени, используйте команду timedatectl, как показано далее:

# timedatectl

или

# timedatectl  status

Изменение времени

Мы используем timedatectl для изменения системного времени в формате HH: ММ: ss.

HH обозначает час в 24-часовом формате, MM обозначает минуты, а SS – секунды.

Для установки времени на 09:08:07 используйте команду следующим образом (используя timedatectl)

# timedatectl set-time 09:08:07

Используя команду date

Изменение времени означает, что все системные процессы выполняются в одно и то же время, при этом рабочий стол и сервер работают одновременно.

Из командной строки используйте команду date следующим образом:

# date +%T -s "10:13:13"

Где,

• 10: час (hh)
• 13: минута (мм)
• 13: Второй (ss)

Чтобы изменить локаль на AM или PM, используйте %p в следующем формате.

# date +%T%p -s "6:10:30AM"
# date +%T%p -s "12:10:30PM"

Изменение даты

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

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

# date –set=”20140125 09:17:00”

Он установит текущую дату и время вашей системы на «25 января 2014 года» и «09: 17: 00 AM».

Обратите внимание, что для этого у вас должна быть привилегия root.

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

Допустимый формат: ГГГГ-ММ-ДД, ГГГГ представляет год, ММ – месяц в двух цифрах, а ДД – день в двух цифрах.

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

# timedatectl set-time 20190115

Создать пользовательский формат даты

Чтобы создать собственный формат даты, используйте знак плюс (+)

$ date +”Day : %d Month : %m Year : %Y”
Day: 05 Month: 12 Year: 2013

$ date +%D
12/05/13

Формат %D соответствует формату год / месяц / день.

Вы также можете указать название дня, если хотите.

Вот некоторые примеры :

$ date +”%a %b %d %y”
Fri 06 Dec 2013

$ date +”%A %B %d %Y”
Friday December 06 2013

$ date +”%A %B %d %Y %T”
Friday December 06 2013 00:30:37

$ date +”%A %B-%d-%Y %c”
Friday December-06-2013 12:30:37 AM WIB

Отобразить список / изменить часовые пояса

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

Первое, что нужно сделать, это составить список всех часовых поясов региона, используя опцию list-часовой пояс или grep, чтобы упростить понимание команды:

# timedatectl list-timezones

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

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

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

# timedatectl set-timezone America/Los_Angeles

Для отображения часового пояса выполните:

# timedatectl | grep "Time"

Установите Local-RTK

Часы реального времени (RTC), которые также называются аппаратными часами, не зависят от операционной системы и продолжают работать, даже когда сервер выключен.

Используйте следующую команду:

# timedatectl set-local-rtc 0

Кроме того, следующая команда для местного времени

# timedatectl set-local-rtc 1

Проверить / изменить время CMOS

Аккумулятор CMOS компьютера автоматически синхронизирует время с системными часами, если CMOS работает правильно.

Используйте команду hwclock, чтобы проверить дату CMOS следующим образом

# hwclock

Для синхронизации даты CMOS с системной датой используйте следующий формат

# hwclock –systohc

Правильное время для вашей среды Linux очень важно, потому что от этого зависят многие операции.

Такие операции включают в себя регистрацию событий и cron jobs.

Также, это важно для работы в домене.

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

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

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

Как работает время на компьютере?

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

Операционная система передает значение таймера в память BIOS при выключении и берет его оттуда при включении. Отсюда берутся проблемы со временем при двойной загрузке Windows и Linux, но эта тема раскрыта в другой статье — сбивается время в Ubuntu и Windows. Другая проблема почему может сбиваться время — это неверно установленный часовой пояс. Если вы установили часовой пояс linux неверно, то часы будут постоянно синхронизироваться через интернет и идти неверно.

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

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

Если навести курсор на время, вы увидите более подробную информацию, область уведомлений и календарь.

Но настроить время здесь уже не получится. Для этого нужно открывать настройки системы. Мы будем рассматривать настройки для Gnome. Откройте меню Dash и наберите в строке поиска «Параметры»:

Дальше откройте «Дата и время»:

Как видите, здесь уже установлено значение по умолчанию «Автоматическое определение даты и времени», а внизу есть пункт, который отвечает за часовой пояс.

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

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

Установка времени через терминал

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

date

У утилиты есть множество опций отображения и настроек, но мы не будем их рассматривать. Есть еще одна команда, которая позволяет посмотреть системное время linux:

sudo hwclock -r

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

date --set="строка"

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

LANG=en_US date

Затем меняем:

sudo date --set "Wed Sep 6 20:43:36 EEST 2017"

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

sudo date --set "Sep 6 20:43:36 2017"

Это даст тот же результат. Еще один вариант — указать формат данных, которые вы собираетесь передавать с помощью модификаторов, например, изменить время linux:

sudo date +%T -s "20:43:36"

Здесь формат очень прост — часы:минуты:секунды. Можно давать время в 12 часовом формате, для этого добавьте модификатор %p:

date +%T%p -s "8:43:36PM"

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

sudo hwclock -w

Еще один новый инструмент от systemd для управления временем — timedatectl. С помощью него можно выполнить те же операции, сначала смотрим доступную информацию о времени:

timedatectl

Текущее системное время отображается в строке Local Time. Чтобы изменить дату, используйте опцию -set-time. Синтаксис передаваемого ей параметра такой: ГГГГ-ММ-ДД ЧЧ:ММ:СС. Думаю тут понятно и без комментариев. Например:

sudo timedatectl --set-time "2017-09-06 20:43:36"

Можно задать только время, тогда нужно использовать синтаксис времени ЧЧ:ММ:СС, например:

sudo timedatectl --set-time "20:43:36"

Еще раз говорю, что если включена синхронизация по сети, то вы не сможете изменить время. Но с помощью timedatectl ее можно отключить:

sudo timedatectl set-ntp no

Или включить обратно:

sudo timedatectl set-ntp yes

C помощью этой же команды можно не только установить время linux, но и настроить часовой пояс, для этого используйте опцию set-timezone:

sudo timedatectl set-timezone 'Russia/Moscov'

Вы можете посмотреть список доступных часовых поясов командой:

timedatectl list-timezones

Видео о настройке времени с помощью timedatectl:

Выводы

Вот и все. Теперь вы знаете как выполняется установка времени linux. Как видите, это очень просто, вы можете использовать различные способы, в зависимости от того, что вам будет удобнее. Если у вас остались вопросы, спрашивайте в комментариях!

Creative Commons License

Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна .

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

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

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

Подготовка

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

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

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

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

timedatectl

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

               Local time: Wed 2020-05-06 19:33:20 UTC
           Universal time: Wed 2020-05-06 19:33:20 UTC
                 RTC time: Wed 2020-05-06 19:33:22    
                Time zone: UTC (UTC, +0000)           
System clock synchronized: yes                         
              NTP service: active                      
          RTC in local TZ: no   

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

ls -l /etc/localtime
lrwxrwxrwx 1 root root 27 Dec 10 12:59 /etc/localtime -> /usr/share/zoneinfo/Etc/UTC

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

cat /etc/timezone
UTC

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

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

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

timedatectl list-timezones
...
America/Montevideo
America/Nassau
America/New_York
America/Nipigon
America/Nome
America/Noronha
...

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

sudo timedatectl set-timezone your_time_zone

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

sudo timedatectl set-timezone America/New_York

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

timedatectl
               Local time: Wed 2020-05-06 15:41:42 EDT  
           Universal time: Wed 2020-05-06 19:41:42 UTC  
                 RTC time: Wed 2020-05-06 19:41:48      
                Time zone: America/New_York (EDT, -0400)
System clock synchronized: yes                         
              NTP service: active                      
          RTC in local TZ: no   

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

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

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

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

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

Выводы

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

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

В статье мы разберёмся с тем, как настроить время в 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. Посмотрим текущее время, укажем часовой пояс и настроим синхронизацию времени

Содержание

Введение
date: Узнать текущие системные дату и время
hwclock: Узнать текущие дату и время BIOS
Изменить дату и время вручную
Синхронизация с ntp
Заставить систему синхронизовать время с ntp
Timezone
Похожие статьи

Введение

При работе в сети синхронизация времени и даты это важный
фактор увеличивающий стабильность и

безопасность

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

В этой статье вы узнаете как настраивать дату и время вручную. И, что более
важно — как синхронизировать их с ntp сервером.

Узнать текущее системное время

Узнать текущее системное время можно командой
date

date

2023-02-10 13:51:04.364911+02:00

Узнать текущее время BIOS

Узнать текущее системное время BIOS можно командой
hwclock

sudo hwclock

2023-02-10 13:51:04.389911+02:00

date и hwclock
могут показывать совершенно разное время

Исправить текущее время

Сначала нужно задать время командой
date

date MMDDhhmmCCYY.ss

Описание параметров команды date:

MM две цифры текущего месяца (пример: январь=01);
DD две цифры текущей даты (если текущий календарный день 1, то пишется 01);
hh две цифры обозначающие час
mm две цифры обозначающие минуты
CCYY четыре цифры года
ss две цифры секунд

Также можно вводить «date MMDDhhmmCCYY» без секунд, тогда секунды выставляются на ноль.

После выполнения date нужно внести новое установленное время в BIOS:

hwclock —systohc

Теперь осталось только проверить сохранились ли изменения

sudo hwclock

Синхронизация с ntp

Проверьте установлен ли ntp командой

which ntpd

/usr/sbin/ntpd

Если ntp не установлен выполните

sudo apt install ntp

Проверьте запускается ли ntpd автоматически командой

systemctl list-unit-files | grep ntpd.s

ntpd.service enabled

Если ntpd неактивен (disabled) выполните

systemctl start ntpd

systemctl enable ntpd

Проверить добавлен ли сервис ntp в зону public в

firewall

можно командой

sudo firewall-cmd —get-services | grep ntp

Если ещё не добавлен, то чтобы разрешить UDP траффик от ntp выполните

firewall-cmd —permanent —add-service=ntp

firewall-cmd —reload

success

success

Отредактируйте файл

ntp.conf

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

vi /etc/ntp.conf

server 0.fi.pool.ntp.org
server 1.fi.pool.ntp.org
server 2.fi.pool.ntp.org
server 3.fi.pool.ntp.org

Теперь нужно перезапустить ntpd

systemctl restart ntpd

Проверить откуда берётся время можно командой

ntpq -p

remote refid st t when poll reach delay offset jitter
==============================================================================
time.cloudflare 10.79.8.177 3 u 14 64 7 3.987 -0.366 0.016
37.228.129.2 193.66.253.94 2 u 16 64 7 5.301 -1.639 1.908
ivanova.ganneff 237.17.204.95 2 u 13 64 7 5.296 3.850 0.266
ntp23.kashra-se 192.168.100.15 2 u 12 64 5 32.935 -2.213 0.192

Выставить время BIOS по только что полученному времени можно командой

hwclock —systohc

Заставить систему синхронизовать время с ntp

Можно следующей командой

sudo ntpdate -u 0.fi.pool.ntp.org

Вместо 0.fi.pool.ntp.org поставьте нужный вам сервер. Например, для России подойдёт один из

server 0.ru.pool.ntp.org

server 1.ru.pool.ntp.org

server 2.ru.pool.ntp.org

server 3.ru.pool.ntp.org

Timezone

Узнать текущую временную зону

timedatectl

Local time: Fri 2023-02-10 13:51:04. EEST
Universal time: Fri 2023-02-10 11:51:04 UTC
RTC time: Fri 2023-02-10 11:51:04
Time zone: Europe/Helsinki (EEST, +0300)
System clock synchronized: yes
NTP service: n/a
RTC in local TZ: no

Изменить временную зону можно командой set-timezone

timedatectl set-timezone «America/Denver»

Проверить результат

timedatectl | grep «Time zone»

Time zone: America/Denver (MDT, -0600)

Похожие статьи

Ubuntu
Установка
Настройка сети
SSH: удалённый доступ
SCP: обмен файлами;
Firewall
Дата и время
X Window System Ubuntu
xrandr: Поменять местами экраны
XRDP: Удалённый рабочий стол
VNC: Удалённый рабочий стол
Wayland
Изменить machine-id
Изменить ulimit
xclip: Работа с буфером обмена
dpkg: Установка из .deb файлов
Удалить старые ядра
FAQ
Файлы
Объединить .pdf файлы
diff: сравнение файлов
find: поиск файлов
kill: завершить процесс
make
signal: системные сигналы
env: переменные окружения
localectl: язык
systemctl: Список активных сервисов
cron: задания по расписанию
sudo
Grep

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

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

  • Как изменить время подсветки клавиатуры на honor magicbook
  • Как изменить время на триколор тв 2 часа от москвы
  • Как изменить время подсветки клавиатуры на acer
  • Как изменить время на терминале тинькофф
  • Как изменить время погашения экрана на андроид

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

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