HCRM博客

如何修改和同步 CentOS 系统中的时间?

CentOS 系统时间详解

CentOS 操作系统在处理时间方面涉及两个主要概念:系统时间和硬件时间,系统时间(System Time)由 Linux 内核维护,而硬件时间(RealTime Clock, RTC)则由主板上的电池供电维持,本文将详细介绍如何在 CentOS 系统中查看和设置这两种时间,以及如何进行时区设置和时间同步。

如何修改和同步 CentOS 系统中的时间?-图1
(图片来源网络,侵权删除)

一、系统时间和硬件时间

1. 系统时间(System Time)

系统时间是指当前 Linux 内核中的时间,它可以通过date 命令来查看和设置。

查看系统时间

  date

输出示例:

  Wed Oct 11 10:35:27 CST 2024

设置系统时间

  date s "20241011 10:35:27"

2. 硬件时间(RealTime Clock, RTC)

如何修改和同步 CentOS 系统中的时间?-图2
(图片来源网络,侵权删除)

硬件时间是由主板上的电池供电的时间,它独立于操作系统运行,即使在系统关闭的情况下也能继续运行,硬件时间通常使用协调世界时(UTC)。

查看硬件时间

  hwclock

输出示例:

  20241011 02:35:27.123456+00:00

设置硬件时间

  hwclock set date="20241011 02:35:27"

二、时区设置

CentOS 系统中,时区的设置和修改可以通过多种方式实现

1. 查看当前时区

如何修改和同步 CentOS 系统中的时间?-图3
(图片来源网络,侵权删除)
timedatectl

输出示例:

Local time: Fri 20241011 10:35:27 CST
Universal time: Fri 20241011 02:35:27 UTC
RTC time: Fri 20241011 02:35:27
Time zone: Asia/Shanghai (CST, +0800)
NTP enabled: yes
NTP synchronized: yes
RTC in local TZ: no
DST active: n/a

2. 列出所有可用时区

timedatectl listtimezones

输出示例(部分):

Africa/Abidjan
Africa/Accra
Africa/Addis_Ababa
...

3. 设置时区

timedatectl settimezone Region/City

设置为上海时区:

timedatectl settimezone Asia/Shanghai

三、时间同步

为了确保系统时间的准确性,通常会与网络时间协议(NTP)服务器进行同步。

1. 安装 NTP 服务

yum install ntpdate y

yum install chrony y

2. 手动同步时间

使用ntpdate 命令与 NTP 服务器同步时间:

ntpdate pool.ntp.org

或者,如果使用的是chrony

chronyc a makestep

四、常见问题及解决方法

1. 系统时间与硬件时间不一致怎么办?

系统时间和硬件时间可能不一致,特别是在系统长时间运行后,可以使用以下命令将系统时间写入硬件时间,或将硬件时间同步到系统时间。

将系统时间写入硬件时间

  hwclock systohc

将硬件时间同步到系统时间

  hwclock hctosys

2. 如何更改硬件时间的时区?

默认情况下,硬件时间使用 UTC,如果需要硬件时间使用本地时区,可以使用以下命令:

timedatectl setlocalrtc true

要改回使用 UTC:

timedatectl setlocalrtc false

CentOS 系统时间的管理和设置涉及系统时间和硬件时间两个方面,通过datehwclock 命令可以查看和设置这两种时间,时区设置可以通过timedatectl 命令完成,而时间同步则需要依赖 NTP 服务,了解这些命令和工具的使用,可以帮助系统管理员更好地管理和维护系统时间,确保系统运行的准确性和一致性。

分享:
扫描分享到社交APP
上一篇
下一篇