Настройка даты и времени в Rocky
Введение
При работе в сети синхронизация времени и даты это важный
фактор увеличивающий стабильность и
безопасность
работы всех систем.
В этой статье вы узнаете как настраивать дату и время вручную. И, что более
важно - как синхронизировать их с ntp сервером.
Узнать текущее системное время
Узнать текущее системное время можно командой date
date
2020-12-27 11:25:17.364911+02:00
Узнать текущее время BIOS
Узнать текущее системное время BIOS можно командой hwclock
sudo hwclock
2020-12-27 11:28:17.389911+02:00
date и hwclock могут показывать совершенно разное время
Исправить текущее время
Сначала нужно задать время командой date
date MMDDhhmmCCYY.ss
MM | две цифры текущего месяца (пример: январь=01); |
DD | две цифры текущей даты (если текущий календарный день 1, то пишется 01); |
hh | две цифры обозначающие час |
mm | две цифры обозначающие минуты |
CCYY | четыре цифры года |
ss | две цифры секунд |
Также можно вводить «date MMDDhhmmCCYY» без секунд, тогда секунды выставляются на ноль.
После выполнения date нужно внести новое установленное время в BIOS:
hwclock --systohc
Теперь осталось только проверить сохранились ли изменения
sudo hwclock
Синхронизация с ntp
В качестве ntp сервера и клиента в Rocky используется утилита chrony
which chronyd
/usr/sbin/chronyd
Если chrony не установлен выполните
sudo yum install -y chrony
Проверьте запускается ли chronyd автоматически командой
systemctl list-unit-files | grep chronyd.s
chronyd.service disabled
Если ntpd неактивен (disabled) выполните
systemctl start chronyd
systemctl enable chronyd
Разрешить ntp в Firewall
Проверить добавлен ли сервис ntp в зону public в firewall можно командой
sudo firewall-cmd --get-services | grep ntp
Если ещё не добавлен, то чтобы разрешить UDP траффик от ntp выполните
firewall-cmd --permanent --add-service=ntp
firewall-cmd --reload
success
success
Отредактируйте файл crony.conf с настройками сервера
vi /etc/crony.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
Теперь нужно перезапустить chronyd
systemctl restart chronyd
Проверить откуда берётся время можно командой
chronyc sources
210 Number of sources = 4 MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^- ukk0.internationalconspi> 3 10 377 236 -146us[ -146us] +/- 17ms ^- static.52.142.216.95.cli> 2 10 377 335 -1869us[-1869us] +/- 44ms ^- 50-205-244-107-static.hf> 2 10 377 659 +2445us[+2489us] +/- 85ms ^* time.cloudflare.com 3 10 377 394 +206us[ +250us] +/- 4012us
Выставить время BIOS по только что полученному времени можно командой
hwclock --systohc
Заставить систему синхронизовать время с ntp
Можно следующей командой
chronyc makestep
Разрешить всё что ещё неразрешено:
sudo sed -i 's/#allow/allow/' /etc/chrony.conf
Проверить статус chronyd
systemctl status chronyd
● chronyd.service - NTP client/server Loaded: loaded (/usr/lib/systemd/system/chronyd.service; disabled; vendor preset: enabled) Active: inactive (dead) Docs: man:chronyd(8) man:chrony.conf(5)
Запустить chronyd
systemctl start chronyd
● chronyd.service - NTP client/server Loaded: loaded (/usr/lib/systemd/system/chronyd.service; disabled; vendor preset: enabled) Active: active (running) since Mon 2024-10-07 19:50:08EEST; 1s ago Docs: man:chronyd(8) man:chrony.conf(5) Process: 2878 ExecStartPost=/usr/libexec/chrony-helper update-daemon (code=exited, status=0/SUCCESS) Process: 2874 ExecStart=/usr/sbin/chronyd $OPTIONS (code=exited, status=0/SUCCESS) Main PID: 2876 (chronyd) Tasks: 1 (limit: 23548) Memory: 788.0K CGroup: /system.slice/chronyd.service └─2876 /usr/sbin/chronyd Oct 07 19:50:08 localhost.localdomain systemd[1]: Starting NTP client/server... Oct 07 19:50:08 localhost.localdomain chronyd[2876]: chronyd version 3.5 starting (+CMDMON +NTP +REFCLOCK +RTC +PRIVDROP +SCFILTER +SIGND +ASYNCDNS +SECHASH +IPV6 +DEBUG) Oct 07 19:50:08 localhost.localdomain chronyd[2876]: Using right/UTC timezone to obtain leap second data Oct 07 19:50:08 localhost.localdomain systemd[1]: Started NTP client/server. Oct 07 19:50:08 localhost.localdomain chronyd[2876]: Selected source 162.159.200.123 Oct 07 19:50:08 localhost.localdomain chronyd[2876]: System clock TAI offset set to 37 seconds
Остановить chronyd
systemctl stop chronyd
Перезапустить chronyd
systemctl restart chronyd
tracking: проверка синхронизации
Чтобы проверить есть ли синхронизация выполните
chronyc tracking
Reference ID : 4E2412B8 (78-36-18-184.dynamic.murmansk.dslavangard.ru) Stratum : 2 Ref time (UTC) : Mon Oct 07 19:50:08 2024 System time : 0.000049305 seconds fast of NTP time Last offset : -0.000010323 seconds RMS offset : 0.000790649 seconds Frequency : 4.357 ppm fast Residual freq : +0.154 ppm Skew : 1.831 ppm Root delay : 0.034635838 seconds Root dispersion : 0.000497150 seconds Update interval : 64.6 seconds Leap status : Normal
Пояснения: Reference ID – the reference ID and name to which the computer is currently synced. Stratum – number of hops to a computer with an attached reference clock. Ref time – this is the UTC time at which the last measurement from the reference source was made. System time – delay of system clock from synchronized server. Last offset – estimated offset of the last clock update. RMS offset – long term average of the offset value. Frequency – this is the rate by which the system’s clock would be wrong if chronyd is not correcting it. It is provided in ppm (parts per million). Residual freq – residual frequency indicated the difference between the measurements from reference source and the frequency currently being used. Skew – estimated error bound of the frequency. Root delay – total of the network path delays to the stratum computer, from which the computer is being synced. Leap status – this is the leap status which can have one of the following values – normal, insert second, delete second or not synchronized. To check information about chrony’s sources, you can issue the following command.
Конфигурация chronyd
sudo vi /etc/chrony.conf
# Use public servers from the pool.ntp.org project. # Please consider joining the pool (http://www.pool.ntp.org/join.html). pool 2.pool.ntp.org iburst # Record the rate at which the system clock gains/losses time. driftfile /var/lib/chrony/drift # Allow the system clock to be stepped in the first three updates # if its offset is larger than 1 second. makestep 1.0 3 # Enable kernel synchronization of the real-time clock (RTC). rtcsync # Enable hardware timestamping on all interfaces that support it. #hwtimestamp * # Increase the minimum number of selectable sources required to adjust # the system clock. #minsources 2 # Allow NTP client access from local network. #allow 192.168.0.0/16 # Serve time even if not synchronized to a time source. #local stratum 10 # Specify file containing keys for NTP authentication. keyfile /etc/chrony.keys # Get TAI-UTC offset and leap seconds from the system tz database. leapsectz right/UTC # Specify directory for log files. logdir /var/log/chrony # Select which information is logged. #log measurements statistics tracking
Timezone
Узнать текущую временную зону
timedatectl
Local time: Mon 2024-10-07 19:50:08 MDT Universal time: Mon 2024-10-07 19:50:08 UTC RTC time: Mon 2024-10-07 19:50:08 Time zone: America/Denver (MDT, -0600) NTP enabled: yes NTP synchronized: yes RTC in local TZ: no DST active: yes Last DST change: DST began at Sun 2021-03-14 01:59:59 MST Sun 2021-03-14 03:00:00 MDT Next DST change: DST ends (the clock jumps one hour backwards) at Sun 2021-11-07 01:59:59 MDT Sun 2021-11-07 01:00:00 MST
Изменить временную зону можно командой set-timezone
timedatectl set-timezone "Europe/Helsinki"
Проверить результат
timedatectl | grep "Time zone"
Time zone: Europe/Helsinki (EEST, +0300)
РЕКЛАМА от Яндекса. Может быть недоступна в вашем регионе
Конец рекламы. Если там пусто считайте это рекламой моей телеги