当前位置: 代码网 > 服务器>服务器>Linux > Linux和Windows的NTP时间同步的完整教程

Linux和Windows的NTP时间同步的完整教程

2026年04月08日 Linux 我要评论
在linux服务器运维过程中,系统时间偏差是常见问题,尤其在数据库集群、分片部署等场景中,多台机器时间一致性直接影响业务稳定性。本文将详细讲解linux系统时间修改、时区配置、ntp时间同步(含ntp

在linux服务器运维过程中,系统时间偏差是常见问题,尤其在数据库集群、分片部署等场景中,多台机器时间一致性直接影响业务稳定性。本文将详细讲解linux系统时间修改、时区配置、ntp时间同步(含ntpdate与chrony)、定时同步任务设置,以及常见问题解决,适合运维新手快速上手。

一、基础时间操作(date与hwclock命令)

linux系统中,时间分为系统时间(由系统内核维护)和硬件时间(bios时钟,关机后由主板电池供电),日常操作需区分两者,避免重启后时间错乱。

查看时间

查看系统时间:

date
示例输出:wed jun 7 14:00:00 cst 2018

查看硬件时间(bios时间):

hwclock # 等价于 hwclock -r(默认参数-r为查看)
示例输出:wed 02 nov 2016 02:53:35 am cst -0.632895 seconds

修改系统时间

单独修改日期:

date -s 06/07/2018 # 格式:月/日/年

date -s 2017/03/06 # 格式:年/月/日

单独修改时间:

date -s 14:00:00 # 格式:时:分:秒

系统时间与硬件时间同步

修改系统时间后,需将系统时间写入硬件时钟,避免重启后时间恢复原状:

hwclock -w # 等价于 clock -w,将系统时间同步到硬件时间

同步后验证:date 和 hwclock 输出时间应一致

二、时区配置(修改为中国东八区)

默认情况下,linux系统可能使用utc时区,需手动修改为中国东八区(asia/shanghai),确保时间显示与本地一致。

1. 复制时区文件到系统默认时区配置

cp /usr/share/zoneinfo/asia/shanghai /etc/localtime

2. 修改时区配置文件(永久生效)

vi /etc/sysconfig/clock

写入以下内容:

zone=“asia/shanghai”
utc=false
arc=false

配置完成后,执行date命令,确认时间显示为cst(中国标准时间)即可。

三、时间同步工具安装(ntpdate与chrony)

日常时间同步可使用ntpdate(简单快捷),若需更高精度的时间同步,推荐使用chrony(解决ntp精度不足问题,开源免费)。

安装ntpdate

yum install -y ntpdate # centos/rhel系统

若提示命令不存在,可安装ntp完整包:

yum install -y ntp

安装chrony(高精度同步工具)

chrony是一款开源自由软件,能实时保持系统时钟与ntp服务器同步,精度高于传统ntp,适合对时间精度要求高的场景(如金融、集群部署):

yum install -y chrony # 安装
systemctl start chronyd # 启动服务
systemctl enable chronyd # 设置开机自启

四、手动同步网络时间(ntpdate方式)

使用ntpdate命令可快速同步网络时间,需指定ntp服务器,若某台服务器同步失败,可更换其他服务器尝试。

基础同步命令

ntpdate -u 时间服务器地址

示例:同步美国nist服务器

ntpdate -u time.nist.gov

同步成功提示:

3 jun 15:42:39 ntpdate[4721]: adjust time server 211.115.194.21 offset -0.005885 sec

提示说明:系统已调整时间为服务器(211.115.194.21)的时间,时间偏差为-0.005885秒(偏差越小,精度越高)。

关键参数说明

-u:越过防火墙与ntp服务器同步,避免因防火墙限制导致同步失败(若不加此参数,可能出现“no server suitable for synchronization found”错误)。

常用ntp服务器(亲测可用)

  • 中国国家授时中心(推荐):210.72.145.44
  • 上海ntp服务器:ntp.api.bz
  • 美国nist服务器:time.nist.gov
  • 复旦大学服务器:ntp.fudan.edu.cn
  • 微软授时服务器:time.windows.com
  • 亚洲通用服务器:0.asia.pool.ntp.org、1.asia.pool.ntp.org、2.asia.pool.ntp.org、3.asia.pool.ntp.org
  • 韩国服务器:time.nuri.net

示例:同步中国国家授时中心时间:

ntpdate -u 210.72.145.44

同步后更新硬件时间

网络同步系统时间后,务必执行以下命令,将同步后的时间写入硬件时钟:

hwclock -w

五、定时执行时间同步任务(crontab)

手动同步无法保证长期时间一致,需通过crontab设置定时任务,定期同步时间,推荐每1小时同步一次。

crontab格式说明

格式:分 时 日 月 周 执行命令

示例说明:

0 5 * * * :每天5点0分执行

*/30 * * * * :每30分钟执行

* */1 * * * :每1小时执行

添加定时同步任务

执行crontab -e编辑定时任务,添加以下内容(二选一或同时添加,确保同步稳定):

每1小时同步韩国time.nuri.net服务器,并更新硬件时间

*/1 * * * root ntpdate -u time.nuri.net && hwclock -w

每1小时同步内网ntp服务器(192.168.0.96),并更新硬件时间

*/1 * * * root ntpdate -u 192.168.0.96 && hwclock -w

每天5点10分同步中国国家授时中心服务器,并更新硬件时间

10 5 * * * root /usr/sbin/ntpdate -u 210.72.145.44; hwclock -w

重启crontab服务(使任务生效)

systemctl restart crond # centos 7+

/etc/init.d/crond restart # centos 6

六、开机自动网络校时(备选方案)

除了crontab定时同步,还可设置开机自动同步时间,适合服务器重启后快速校准时间:

vi /etc/rc.d/rc.local

添加以下内容(内网ntp服务器示例,可替换为其他公共服务器)

/usr/sbin/ntpdate -u 192.168.0.2 192.168.0.3 192.168.0.4; /sbin/hwclock -w

说明:多个服务器用空格分隔,确保其中一台可用即可完成同步。

七、常见问题解决

提示“no server suitable for synchronization found”

原因及解决方法:

  • 未加-u参数,防火墙限制:添加-u参数,如ntpdate -u time.nist.gov。
  • ntp服务器不可用:更换本文提供的其他服务器(优先选择中国国家授时中心210.72.145.44)。
  • 系统时间与服务器时间偏差过大(超过24小时):先手动修改系统时间至接近当前时间,再执行同步命令。

同步成功后,重启服务器时间错乱

原因:未将系统时间写入硬件时钟,解决方法:同步后执行hwclock -w,或在定时任务中添加该命令。

提示“ntpdate: command not found”

原因:未安装ntpdate或ntp包,解决方法:执行yum install -y ntpdate或yum install -y ntp。

八、补充说明

  1. 若需更高精度的时间同步,推荐使用chrony替代ntpdate,配置简单且精度更高,后续可单独出chrony详细配置教程。
  2. 内网环境中,建议搭建一台本地ntp服务器,所有内网机器同步该服务器时间,避免外网依赖。

以上就是linux ntp时间同步的完整操作流程,涵盖基础操作、时区配置、手动同步、定时同步及常见问题,适合新手直接上手操作。

windows同步如下:

gpedit.msc

调整ntp时间同步频率

linux可以通过crontab控制频率

windows server通过修改注册表同步

以上就是linux和windows的ntp时间同步的完整教程的详细内容,更多关于linux windows的ntp时间同步的资料请关注代码网其它相关文章!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2026  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com