Установка времени linux debian

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

Точное хронометрирование – очень важное условие корректной работы многих современных программ. Из-за неправильного времени на сервере могут возникнуть ошибки, и данные могут быть повреждены (например, при обновлении БД или логировании). Такие ошибки сложно исправить.

В Debian 10 синхронизация времени встроена и включена по умолчанию; за неё отвечает стандартный сервер времени ntpd, предоставляемый пакетом ntp. Данный мануал ознакомит вас с базовыми командами для управления временем, научит проверять состояние ntpd и устанавливать другие сервисы сетевого времени.

Требования

Для работы вам понадобится сервер Debian 10 и пользователь с доступом к sudo (данный мануал нужно выполнить в сессии этого пользователя). Все необходимые инструкции по настройке вы найдете здесь.

1: Основные команды для управления временем

date – базовая команда для определения времени на сервере. Любой пользователь может использовать её, чтобы узнать дату и время:

date
Wed 31 Jul 2019 06:03:19 PM UTC

Как правило, по умолчанию серверы используют часовой пояс UTC (Coordinated Universal Time) – это всемирное координированное время. UTC последовательно устанавливает время на серверах и минимизирует ошибки в случае если сервера инфраструктуры находятся в разных часовых поясах.

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

Сначала запросите список доступных поясов:

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

После этого установите часовой пояс с помощью timedatectl set-timezone. Используйте следующую команду, указав в ней необходимый часовой пояс:

sudo timedatectl set-timezone America/New_York

Примечание: Вместо America/New_York укажите необходимый часовой пояс.

Убедитесь, что пояс изменился:

date
Wed 31 Jul 2019 02:08:43 PM EDT

Аббревиатура часового пояса отражает новое значение.

2: Состояние ntpd

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

sudo systemctl status ntp
ntp.service — Network Time Service
Loaded: loaded (/lib/systemd/system/ntp.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2019-07-31 13:57:08 EDT; 17min ago
Docs: man:ntpd(8)
Main PID: 429 (ntpd)
Tasks: 2 (limit: 1168)
Memory: 2.1M
CGroup: /system.slice/ntp.service
└─429 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 106:112
. . .

Строка active (running)указывает, что сервер работает правильно. Получить больше информации можно с помощью ntpq:

ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
0.debian.pool.n .POOL. 16 p — 64 0 0.000 0.000 0.000
1.debian.pool.n .POOL. 16 p — 64 0 0.000 0.000 0.000
2.debian.pool.n .POOL. 16 p — 64 0 0.000 0.000 0.000
3.debian.pool.n .POOL. 16 p — 64 0 0.000 0.000 0.000
+208.67.72.50 152.2.133.55 2 u 12 64 377 39.381 1.696 0.674
+198.46.223.227 204.9.54.119 2 u 6 64 377 22.671 3.536 1.818
-zinc.frizzen.ne 108.61.56.35 3 u 43 64 377 12.012 1.268 2.553
-pyramid.latt.ne 204.123.2.72 2 u 11 64 377 69.922 2.858 0.604
+nu.binary.net 128.252.19.1 2 u 10 64 377 35.362 3.148 0.587
#107.155.79.108 129.7.1.66 2 u 65 64 377 42.380 1.638 1.014
+t1.time.bf1.yah 98.139.133.62 2 u 6 64 377 11.233 3.305 1.118
*sombrero.spider 129.6.15.30 2 u 47 64 377 1.304 2.941 0.889
+hydrogen.consta 209.51.161.238 2 u 45 64 377 1.830 2.280 1.026
-4.53.160.75 142.66.101.13 2 u 42 64 377 29.077 2.997 0.789
#horp-bsd01.horp 146.186.222.14 2 u 39 64 377 16.165 4.189 0.717

Читайте также:  Grub восстановить linux windows

-ntpool1.603.new 204.9.54.119 2 u 46 64 377 27.914 3.717 0.939

ntpq – это инструмент запросов ntpd. Опция –p собирает информацию о серверах NTP, к которым подключен ntpd. Ваш вывод будет немного отличаться, но в нем будут стандартные серверы пула Debian и несколько других серверов. У ntpd может уйти несколько минут на установку соединения.

3: Переход с ntpd на systemd-timesyncd

Для замены ntpd можно использовать встроенный демон timesyncd – это простая альтернатива ntpd, интегрированная с systemd. Однако при переходе следует учитывать, что timesyncd не работает в качестве сервера времени и использует менее сложные методы синхронизации системного времени. Если вы используете сложные распределенные системы реального времени, лучше оставаться с ntpd.

Чтобы перейти на timesyncd, сначала удалите ntpd.

Затем запустите сервис timesyncd:

sudo systemctl start systemd-timesyncd

sudo systemctl status systemd-timesyncd
systemd-timesyncd.service — Network Time Synchronization
Loaded: loaded (/lib/systemd/system/systemd-timesyncd.service; enabled; vendor preset: enabled)
Drop-In: /usr/lib/systemd/system/systemd-timesyncd.service.d
└─disable-with-time-daemon.conf
Active: active (running) since Wed 2019-07-31 14:21:37 EDT; 6s ago
Docs: man:systemd-timesyncd.service(8)
Main PID: 1681 (systemd-timesyn)
Status: «Synchronized to time server for the first time 96.245.170.99:123 (0.debian.pool.ntp.org).»
Tasks: 2 (limit: 1168)
Memory: 1.3M
CGroup: /system.slice/systemd-timesyncd.service
└─1681 /lib/systemd/systemd-timesyncd

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

timedatectl
Local time: Wed 2019-07-31 14:22:15 EDT
Universal time: Wed 2019-07-31 18:22:15 UTC
RTC time: n/a
Time zone: America/New_York (EDT, -0400)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no

Команда выведет местное время, универсальное время (которое может совпадать с местным, если вы не переключались с часового пояса UTC) и информацию о времени в сети. System clock synchronized: yes означает, что время было успешно синхронизировано. А NTP service: active указывает, что timesyncd работает.

Заключение

Теперь вы умеете управлять системным временем сервера Debian 10: просматривать текущее время, менять часовой пояс, переходить с ntpd на сервис timesyncd.

Больше информации можно найти в документации NTP или на сайте проекта NTP Pool.

Источник

Дата и временя в Debian

Изображение баннера

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

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

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

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

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

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

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

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

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

Читайте также:  Драйвер принтера samsung ml 2160 linux

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

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

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

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

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

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

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

systemctl list-unit-files | grep ntpd.s

Если 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

Отредактируйте файл ntp.conf с настройками сервера

Найдите свою временную зону на сайте www.ntppool.org

Я нашёл зону Helsinki и добавляю строки

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

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

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 по только что полученному времени можно командой

Заставить систему синхронизовать время с 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

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

Local time: Sat 2023-07-15 11:21:24. EEST Universal time: Sat 2023-07-15 08:21:24 UTC RTC time: Sat 2023-07-15 08:21:24 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)

Источник

Установка времени linux debian

To see the time on a Debian GNU/Linux system, use the command date without arguments. It will show system time respecting the currently defined timezone.

To see the time in the UTC timezone, use the command date --utc (or its shorthand, date -u). See the date manual page.

Set the time manually

When setting the system time manually using date directly, the required time specification format may be confusing (by POSIX convention has to be MMDDhhmmYYYY). However, when using the --set argument, date accepts the date and time in many formats. You can read date’ manual page, or use the example below for one possible and very useful format. The --set argument examples below are specified in the ISO 8601 standard’s extended format as YYYY-MM-DD for Year-Month-DayOfMonth, and time of day HH:MM:SS using 24 hour clock. Leading zeros are significant.

date --set 1998-11-02 date --set 21:08:00

The above two commands set the system date to second of November, 1998, and system time to eight minutes past nine, PM.

Note: using the date command only sets the runtime system time (aka. software clock) but has no effect on the underlying hardware clock (aka. RTC = real time clock). When the system boots, it has no concept of absolute time and will populate the system time with the date and time read from the hardware clock, thus to ensure that the time set using date is kept across reboots it has to be saved to the hardware clock.

Читайте также:  Какие флешки читает линукс

Most desktop environments provide a date/time configuration utility. See also the time-admin program in gnome-system-tools package.

Setting the hardware clock

To write the current system time to the hardware clock so that it can be recovered on subsequent restarts of the system, correct the system time as above, then use the command hwclock --systohc to save it to hardware (see the hwclock manual page for more options).

Modern Debian releases (2.2 and onwards) automatically save the system time to hardware clock on proper shutdowns, and set the system clock from hardware clock when they boot up. This is done by the script /etc/init.d/hwclock.sh.

Set the time automatically

The protocol used to set the time is the Network Time Protocol or NTP. To set the time automatically you need access to an NTP server. Your local network may provide such a server but most people need to access an NTP server via the internet.

On the internet there are time servers that provide the correct time. Your ISP may provide a time service and this would be your closest and probably most accurate source. While there are still many independent NTP servers you can connect to, the best source is http://pool.ntp.org.

Installing NTP

It’s really quite easy on Debian. Just run:

On Debian Bookworm (and later) ntp is a transitional package to ntpsec, so do:

Because the pool is global, you should adjust

And on Debian Bookworm (and later), the configation file is

where XX is your continent or two letter country code. Click on the continent to see the valid country codes (e.g., CA for Canada, etc).

For increased accuracy you can include extra server lines such as

server 0.XX.pool.ntp.org server 1.XX.pool.ntp.org

incrementing the number for each line. Two or three should be all you need.

Hardware clock and system time when dual booting

While Debian prefer to keep the hardware clock in UTC (this prevents the need to change it on daylight savings and timezone changes) other systems (like Windows) by default keeps the hardware clock synchronized to local time. To keep the hardware clock sane and the time correctly displayed by multiple systems they need to agree on which timezone the hardware clock is kept at.

In Debian the timezone for the hardware clock is configured in the file /etc/adjtime:

0.000000 14602224559 0.000000 1460224559 UTC
  • You need to use sudo or su to edit this file. Any editor will work, but nano or vi are normal choices.

Источник

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