原 自动同步linux时间(修改时区、配置自建ntp服务器)
Tags: 原创LinuxOS时区ntp同步时间自建ntp服务器
简介
网络时间协议 (Network Time Protocol,NTP ),可通过网络同步计算机系统之间的时钟。NTP 服务器可使组织中的所有服务器的时间保持同步。
分布式数据库集群的多个节点一般必须配置时钟同步服务 NTP 或者 chrony。
Linux中同步时间的方法主要有以下几种:
- NTP (Network Time Protocol):使用
ntpd
或chronyd
服务来自动同步系统时间。 - 系统时间命令:使用
date
命令手动设置时间,例如sudo date -s "YYYY-MM-DD HH:MM:SS"
。 - hwclock:使用
hwclock
命令同步硬件时钟与系统时钟,例如sudo hwclock --systohc
。 - systemd-timesyncd:在使用systemd的系统中,可以启用
systemd-timesyncd
服务进行时间同步。 - timedatectl:使用
timedatectl
命令手动设置时间,例如sudo timedatectl set-time "YYYY-MM-DD HH:MM:SS"
。
关于ntp中的127.127.1.0
127.0.0.1
和 127.127.1.0
都是回环地址,但它们在 NTP 配置中有不同的含义:
127.0.0.1
:是标准的本地回环地址,用于指向本机。通常用于网络应用程序和服务之间的本地通信,但不特别用于 NTP。127.127.1.0
:
- 专门用于 NTP 配置,指示本地时钟作为时间源。它具有特定的含义,表示该地址是一个低精度的时间源(
stratum 10
)。 - 它的使用明确表示该地址不应作为高精度时间源,而是用于在没有其他时间源时作为备用。
在 NTP 配置中使用 127.127.1.0
是为了清晰地表示本地时钟源,而不是混淆与标准的回环地址 127.0.0.1
。因此,使用 127.127.1.0
能够更好地反映其特定用途和行为。
验证是否安装 NTP 服务以及与 NTP 服务器正常同步
采用如下步骤检查是否安装 NTP 服务以及与 NTP 服务器正常同步:
执行以下命令,如果输出
running
表示 NTP 服务正在运行:12345sudo systemctl status ntpd.servicentpd.service - Network Time ServiceLoaded: loaded (/usr/lib/systemd/system/ntpd.service; disabled; vendor preset: disabled)Active: active (running) since 一 2017-12-18 13:13:19 CST; 3s ago若返回报错信息
Unit ntpd.service could not be found.
,请尝试执行以下命令,以查看与 NTP 进行时钟同步所使用的系统配置是chronyd
还是ntpd
:12345sudo systemctl status chronyd.servicechronyd.service - NTP client/serverLoaded: loaded (/usr/lib/systemd/system/chronyd.service; enabled; vendor preset: enabled)Active: active (running) since Mon 2021-04-05 09:55:29 EDT; 3 days ago若发现系统既没有配置
chronyd
也没有配置ntpd
,则表示系统尚未安装任一服务。此时,应先安装其中一个服务,并保证它可以自动启动,默认使用ntpd
。如果你使用的系统配置是
chronyd
,请直接执行步骤 3。执行
ntpstat
命令检测是否与 NTP 服务器同步:如果输出
synchronised to NTP server
,表示正在与 NTP 服务器正常同步:123synchronised to NTP server (85.199.214.101) at stratum 2time correct to within 91 mspolling server every 1024 s以下情况表示 NTP 服务未正常同步:
1unsynchronised以下情况表示 NTP 服务未正常运行:
1Unable to talk to NTP daemon. Is it running?
执行
chronyc tracking
命令查看 Chrony 服务是否与 NTP 服务器同步。该操作仅适用于使用 Chrony 的系统,不适用于使用 NTPd 的系统。
1chronyc tracking如果该命令返回结果为
Leap status : Normal
,则代表同步过程正常。本人提供Oracle(OCP、OCM)、MySQL(OCP)、PostgreSQL(PGCA、PGCE、PGCM)等数据库的培训和考证业务,私聊QQ646634621或微信dbaup66,谢谢!