跳转到主内容
极星编程网:以代码为星,赴技术山海!

Linux怎么修改系统时间 Linux同步网络时间NTP配置方法【教程】

Linux系统时间不准可致日志错误、证书失效等,可通过date命令手动设置、timedatectl管理、systemd-timesyncd或chrony配置NTP同步、ntpdate强制校准五种方法解决。

如果您发现Linux系统时间不准确,可能导致日志记录错误、证书验证失败或定时任务执行异常。以下是修改本地系统时间及配置NTP同步网络时间的多种方法:

一、使用date命令手动修改系统时间

该方法适用于临时调整系统时间,无需网络连接,直接通过内核时钟设置时间值。注意需具备root权限,且修改后不会自动持久化至硬件时钟。

1、以root用户身份登录终端或使用sudo执行命令。

2、执行命令设置日期和时间,格式为:date -s "YYYY-MM-DD HH:MM:SS",例如:date -s "2024-05-20 14:30:00"。

3、将当前系统时间写入硬件时钟(RTC),避免重启后丢失:执行

hwclock --systohc。

二、使用timedatectl命令修改并管理时间

timedatectl是systemd系统中推荐的时间管理工具,支持设置本地时间、时区及启用/禁用NTP同步,操作更安全且自动处理软硬件时钟同步。

1、查看当前时间状态:执行

timedatectl status。

2、设置时区(如上海):执行

timedatectl set-timezone Asia/Shanghai。

3、手动设置系统时间(需先关闭NTP):执行

timedatectl set-ntp false,再运行timedatectl set-time "2024-05-20 14:30:00"。

4、重新启用NTP同步:执行

timedatectl set-ntp true。

三、配置systemd-timesyncd服务同步NTP时间

systemd-timesyncd是轻量级NTP客户端,预装于多数systemd发行版中,适合桌面与基础服务器环境,无需额外安装软件包。

1、确认服务状态:运行

systemctl is-active systemd-timesyncd,若为inactive则需启用。

2、编辑

配置文件:使用文本编辑器打开/etc/systemd/timesyncd.conf。

3、取消注释并修改NTP服务器行,例如设为国内可靠源:

NTP=ntp.aliyun.com ntp1.aliyun.com。

CentOS Linux 7.9.2009 CentOS Linux 7.9.2009是传统CentOS Linux 7的最后主要版本,也是很多企业历史服务器中仍可能遇到的系统版本。它以稳定、兼容RHEL 7生态、文档丰富和软件支持广泛著称,曾长期用于Web服务、数据库、虚拟化节点和企业内部业务系统。不过CentOS Linux 7已于2024年6月30日停止维护,现在继续使用会面临安全补丁缺失风险。该版本更适合旧业务迁移、历史环境恢复或离线兼容性测试。

下载

4、重启服务使配置生效:执行

systemctl restart systemd-timesyncd。

5、检查同步结果:运行

timedatectl timesync-status查看是否已同步及延迟数值。

四、安装并配置chrony服务实现高精度NTP同步

chrony适用于网络不稳定、虚拟机或移动设备等场景,支持离线时间补偿与更快收敛,比传统ntpd更健壮。

1、安装chrony:在CentOS/RHEL上执行

yum install chrony;在Ubuntu/Debian上执行apt install chrony。

2、备份原始配置:执行

cp /etc/chrony.conf /etc/chrony.conf.bak。

3、编辑配置文件

/etc/chrony.conf,注释默认pool行,添加国内NTP源:server ntp.ntsc.ac.cn iburst和server cn.pool.ntp.org iburst。

4、启用并启动服务:执行

systemctl enable chronyd && systemctl start chronyd。

5、验证同步状态:运行

chronyc tracking查看参考ID、偏移量与更新间隔。

五、使用ntpdate命令进行一次性强制时间校准

ntpdate是传统NTP校时工具,适用于临时快速同步,但因不兼容systemd默认NTP管理机制,需先停用其他时间服务以防冲突。

1、停止正在运行的时间同步服务:执行

systemctl stop systemd-timesyncd chronyd ntpd。

2、安装ntpdate(若未预装):CentOS执行

yum install ntpdate,Ubuntu执行apt install ntpdate。

3、执行强制校时命令,指定可靠NTP服务器:

ntpdate -s ntp1.aliyun.com。

4、将校准后的时间写入硬件时钟:

hwclock --systohc。

相关文章