【运维】Linux/Debian系统时间校准方法简记

Linux/Debian系统时间校准方法简记

在linux系统时间有误差时,需要校准时间。

时区修正

前提时区要一致,不一致进行修改

1.查看当前时区:timedatectl

​

2.时区不一致时候时区改为亚洲上海:timedatectl set-timezone Asia/Shanghai

一、非联网时,手动进行时间校准

查看硬件时间是否与系统时间一致,再和正确的时间对比。

复制代码
hwclock --show && date

方式一:将系统时间同步到硬件时间

1、查看当前时间:date

2、手动设置系统时间:date -s "20251121 14:38:09"

3、将系统时间同步到硬件时间:hwclock -w或hwclock --systohc

方式二:将硬件时间同步到系统时间

1、查看硬件时间:hwclock --show

2、修改硬件时间:hwclock --set --date '20251121 14:38:09'

3、硬件时间和系统时间相互同步:hwclock -s

二、联网时,通过NTP服务进行时间校准

1.Debian系统

1.查看ntp服务版本信息:ntpq -c version

2.若未安装ntp服务,执行命令安装:apt-get install ntp ntpdate

3.查看ntp服务状态:systemctl status ntp或netstat -tlunp | grep ntp

4.启动ntp服务:service ntp start(停止ntp服务命令:service ntp stop或lsof -i:123 + kill -9 PID)

5.执行/usr/sbin/ntpdate 时钟服务器ip或域名或ntpdate 时钟服务器ip或域名

时钟服务器ip或域名例如:192.168.100.2,ntp.neu.edu.cn,ntp.aliyun.com,ntp.ntsc.ac.cn

2.Linux系统

1、安装NTP服务:sudo yum install ntp

2、启动并设置NTP服务开机自启:sudo systemctl enable ntpd && sudo systemctl start ntpd

3、验证时间同步状态:ntpd -p

4、修改NTP配置文件:sudo vim /etc/ntp.conf或者手动同步时间:sudo ntpd ntp.aliyun.com

5、系统时间同步到硬件时间:hwclock --systohc

6、查看硬件时间是否与系统时间一致:hwclock --show && date

或者直接编写执行以下脚本文件

xml 复制代码
vi ntp.sh
xml 复制代码
#!/bin/bash

timedatectl set-timezone Asia/Shanghai &&  
yum -y install ntp ntpdate > /dev/null &&  
sed -i 's/server 0.centos.pool.ntp.org iburst/#server 0.centos.pool.ntp.org iburst/g' /etc/ntp.conf &&  
sed -i 's/server 1.centos.pool.ntp.org iburst/#server 0.centos.pool.ntp.org iburst/g' /etc/ntp.conf &&  
sed -i 's/server 2.centos.pool.ntp.org iburst/#server 0.centos.pool.ntp.org iburst/g' /etc/ntp.conf &&  
sed -i 's/server 3.centos.pool.ntp.org iburst/#server 0.centos.pool.ntp.org iburst/g' /etc/ntp.conf &&  
echo "server ntp.aliyun.com iburst" | tee -a /etc/ntp.conf > /dev/null &&  
systemctl start ntpd &&   
systemctl enable ntpd &&  
systemctl status ntpd &&  
ntpdate ntp.aliyun.com && hwclock --systohc &&  
ntpq -p  

三、定时校准Linux服务器时间

上面的命令是可以校准,但是每天都要执行(发现测试机每天2秒多的误差),怎么可以一劳永逸的解决问题?

可以使用/etc/crontab实现定时校准时间,这个文件是linux的系统定时调度文件,在系统启动后会加载这个文件。

输入vi /etc/crontab编辑该文件,在这个文件最后加入0 16 * * * root ntpdate ntp1.aliyun.com,就可以每天16:00准时以root用户权限,执行ntpdate ntp1.aliyun.com命令。

xml 复制代码
命令格式:`* * * * * user-name command to be executed`
命令说明:
第一个`*`表示:分钟  
第二个`*`表示:小时  
第三个`*`表示:一个月的哪一天  
第四个`*`表示:月份  
第五个`*`表示:一周的哪一天  
`user-name`表示:要执行命令的用户  
其中要表示任何一个都可以就直接用\*表示。前面五个位置以后就表示要执行的命令和参数。
相关推荐
坤坤子吖1 小时前
Linux网络编程:TCP服务器的多进程与多线程实现
linux·服务器·开发语言·网络·c++·笔记·学习
分布式存储与RustFS1 小时前
OpenSearch 的索引快照别只留本地:用 repository-s3 存进 RustFS
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
阡陌数智1 小时前
Claude API新版本重大变更与安全升级指南
java·linux·安全
瑞克-桑切斯1 小时前
docker Harbor 单机部署手册
大数据·运维·elasticsearch·docker·容器
奶茶树2 小时前
【Linux】环境开发工具(vim,gcc,g++,Makefile)
linux·运维·vim
机 _ 长2 小时前
05 智算运维|8 张卡怎么才算「捆成一张」:NCCL 实测与拓扑
运维·人工智能·算法·智算运维
andxe3 小时前
工业级 PoE 交换机选型指南:破解边缘部署四大核心难题
运维·网络·安全·光通信·交换机
Decay__4 小时前
14_MySQL 高可用与容灾架构 —— MGR / InnoDB Cluster / Keepalived+VIP / 双主 / 读写分离 / 两地三中心
运维·数据库·sql·mysql·架构
木子欢儿5 小时前
国内 macOS/Linux 安装 rust
linux·运维·服务器·macos·rust
say_fall5 小时前
【Linux网络编程】计算机网络基础:局域网与广域网、OSI七层模型与TCP/IP五层模型、封装解包与MAC/IP地址、端口号与socket编程接口
linux·网络·tcp/ip·计算机网络·信息与通信