在Dedian系统上设置时间同步--解决Debian系统时间无法同步

最后编辑时间: 2024-02-08

时间同步对于确保 Debian 和其他类 Unix 系统的可靠性、安全性和功能至关重要。网络时间协议 (NTP)是时间同步的基本元素,可将客户端计算机的时钟与时间服务器同步。

本文介绍如何使用 NTP 和替代方案在 Debian 上设置时间同步。

 

在 Debian 上设置时间同步

正确的时间设置对于现代软件的正常运行至关重要。系统间时间同步不良会导致各种问题,从简单的错误到严重的数据损坏。以下部分介绍如何在 Debian 上设置时间同步。

第 1 步:检查 Debian 上的时间

使用date命令检查服务器上的时间:

date

输出显示当前时间以及当前日期。输出中的当前时间通常采用协调世界时 (UTC)。 UTC 是零经度的时间,被接受为通用时区。

第 2 步:设置时区

date命令默认打印 UTC 区域。然而,用户有时需要更改 Debian 上的时区,这是通过timedatectl命令完成的。请按照以下步骤更改 Debian 上的时区:

1. 列出 Debian 上可用的时区:

timedatectl list-timezones

该命令打印所有可用时区的列表。

2. 使用空格键b键浏览输出。

3. 选择时区。例如,美国/东部

4. 按q退出列表。

5. 使用以下命令更改时区:

sudo timedatectl set-timezone <timezone>

例如,要将时区更改为美国/东部运行:

sudo timedatectl set-timezone US/Eastern

该命令没有显示任何输出

6. 使用以下命令验证更改date

date

输出显示 EDT 时间,即美国和加拿大东部夏令时间的缩写。

步骤3:检查ntpd的状态

Debian 运行标准网络时间协议守护进程(ntpd)以将系统时间与外部时间服务器同步。 NTP是同步时间的协议,ntpd是实现NTP协议的程序。

要确认ntpd正在运行,请执行systemctl命令:

sudo systemctl status ntp

输出显示该ntpd服务处于活动状态。因此,ntpd正在运行并与时间服务器同步。

但是,该ntpq命令提供有关ntpd状态的附加信息:

ntpq -p

ntpq命令是一个ntpd查询工具。该-p参数指定有关当前连接的 NTP 服务器的信息ntpd

从 ntpd 切换到 timesyncd

Timesyncd是一种轻量级ntpd替代方案,配置更简单、更高效、更安全。此外,timesyncd还可以更好地与systemd.此功能使使用命令轻松管理systemd

但是,timesyncd不能用作时间服务器,并且在保持系统时间同步方面不太复杂。这些功能使得该程序不太适合需要准确性和可靠性的系统。复杂的实时分布式系统通常使用ntpd.

不过,选择的用户timesyncd需要ntpd先删除。按照步骤:

1.卸载ntpd

sudo apt purge ntp

2. 如果timesyncd系统上没有该软件,请运行以下命令进行安装:

sudo apt install systemd-timesyncd

2、启动timesyncd服务:

sudo systemctl start systemd-timesyncd

该命令没有输出。

3. 检查状态:

sudo systemctl status systemd-timesyncd

输出确认timesyncd正在运行。要显示当前时间和日期,请运行:

timedatectl

输出打印信息,例如:

  • 当地时间
  • 世界时间
  • 系统实时时钟(RTC)时间
  • 时区
  • 确认系统时钟已同步

请在下方留下您的评论.加入TG吹水群