Linux的时间同步+定时任务常用命令及选择

发布时间:2026/9/25 2:12:14

Linux的时间同步+定时任务常用命令及选择 时间同步定时任务一.为什么要时间同步场景时间不准会出什么问题日志分析排查故障时看不准时间顺序HTTPS 证书服务器时间偏差大浏览器提示“证书无效”JAVA项目登录JWT Token 验证失败用户无法登录分布式系统多台服务器时间不一致无法判断请求先后二.chrony是什么chrony是Linux系统的时间同步工具让服务器时间保持准确主要组件组件说明chronyd后台服务持续同步时间后台守护进程chronyc命令行工具查看同步状态命令工具配置chrony.confcat /etc/chrony.conf EOF ​ # 使用中国区 NTP 服务器池自动轮询国内速度快 pool cn.pool.ntp.org iburst ​ # 备用方案任选其一注释掉上面的 pool 即可使用 # server time1.aliyun.com iburst # server ntp.aliyun.com iburst ​ # 允许内网客户端查询作为时间服务器时启用 allow 192.168.0.0/16 ​ # 记录系统时钟的晶振偏差让 chrony 长期运行更精准 driftfile /var/lib/chrony/drift ​ # 当偏差 1 秒时在启动后的前 3 次同步中执行步进跳转之后只做缓慢微调 makestep 1.0 3 ​ # 自动将系统时间写入硬件时钟相当于定期执行 hwclock --systohc rtcsync ​ # NTP 认证密钥文件一般用不到 keyfile /etc/chrony.keys ​ # 调试转储目录一般用不到 ntsdumpdir /var/lib/chrony ​ # 闰秒时区设置保持默认即可 leapsectz right/UTC ​ # 日志目录 logdir /var/log/chrony ​ #启动 systemctl enable --now chronyd查看时间源[rootgald ~]# chronyc sources -v .-- Source mode ^ server, peer, # local clock. / .- Source state * current best, combined, - not combined, | / x may be in error, ~ too variable, ? unusable. || .- xxxx [ yyyy ] /- zzzz || Reachability register (octal) -. | xxxx adjusted offset, || Log2(Polling interval) --. | | yyyy measured offset, || \ | | zzzz estimated error. || | | \ MS Name/IP address Stratum Poll Reach LastRx Last sample ^? time.neu.edu.cn 1 6 377 61 -1057s[ -1057s] /- 9460us ^~ ntp.wdc2.us.leaseweb.net 3 6 377 58 -1057s[ -1057s] /- 133ms ^? 119.28.183.184 2 6 377 61 -1057s[ -1057s] /- 60ms ^? 139.199.214.202 2 6 377 61 -1057s[ -1057s] /- 42ms第一列——状态标识最关键符号当前行含义^?第一行不可达连不上^-第二行被否决偏差较大暂不使用^*第三行当前正在使用的主同步源^第四行备选同步源chrony常用命令#查看时间源 chronyc sources -v ​ #立即同步 chronyc makestep ​ #查看同步精度 chronyc tracking ​ #查看时间 date ​ #修改时区(改成亚洲/上海) timedatectl set-timezone Asia/shanghai ​ #确认时区设置 timedatectl ​ #手动修改配置 echo“Asia/shanghai” /etc/timezone cp /user/share/zoneinfo/Asia/Shanghai /etc/localtime二.定时任务2.1什么是定时任务运维工作中经常需要在固定时间执行某些任务每天凌晨备份日志、每小时清理临时文件、每周一发送报表……这些重复性工作可以用定时任务自动完成。对比项CronSystemd Timer出现时间传统Unix时代现代Systemd时代配置方式crontab文件.timer.service单元精度分钟级秒/微秒级日志集成需手动配置自动集成journalctl依赖管理不支持支持错过执行补偿不支持支Cron是什么Cron是Linux系统中最经典的定时任务工具通过crond守护进程每分钟检查一次是否有任务需要执行。Cron三种配置位置配置位置用途编辑方式crontab -e用户级定时任务每个用户独立保存再/var/spool/cron/用户名/etc/crontab系统级定时任务需要root权限编辑/etc/cron.d应用级定时任务每个应用独立文件便于管理Cron的时间字段格式* * * * * 命令 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ └─── 星期几 (0-7, 0和7都表示周日) ┊ ┊ ┊ └───── 月份 (1-12) ┊ ┊ └─────── 日期 (1-31) ┊ └───────── 小时 (0-23) └─────────── 分钟 (0-59)特殊字符字符含义示例*任意值* * * * *每分钟列举多个值11530 * * * * 每小时的第11530分钟-范围10-15* * * * 每小时的第10到15分钟/步长*/5 * * * * 每五分钟Systemd Timer什么是Systemd TimerSystemd Timer 是 Systemd 内置的定时任务机制由一个 .timer 单元定义触发时间和一个 .service 单元定义执行内容配对工作。Timer的触发方式触发方式说明示例OnCalendar日历触发类似Cron的时间表达式--* 02:00:00每天凌晨两点OnBootSec系统启动后延迟触发OnBootSec5minOnUnitActiveSec服务上次激活后延迟触发OnUnitActiveSec1h实战每天凌晨备份日志与Cron对比最小化安装后没有tar.手动安装dnf -y install tar第一步创建备份脚本#创建备份脚本 [rootgald ~]# cat /opt/backup.sh EOF #!/bin/bash /usr/bin/tar -czf /backup/logs-timer-$(date %F).tar.gz /var/log/ 2/dev/null EOF ​ #设置文件权限让所有用户都可以执行也可以单独设置 [rootgald ~]# chmod X /opt/backup.sh第二步创建Service单元[rootmagedu ~]# vim /etc/systemd/system/backup-timer.service [Unit] DescriptionLog Backup Service (Timer) #这里不是给程序使用可以不设置条件 ​ [Service] Typeoneshot ExecStart/opt/backup.sh #这里只能使用绝对路径 Userroot #设置执行用户Typeoneshot 表示任务执行一次即退出适合定时任务第三步创建Timer单元[rootgald ~]# vim /etc/systemd/system/backup-time.timer [Unit] DescriptionLog Backup Timer ​ [Timer] OnCalendardaily #启动设置 每天执行一次 Persistenttrue #系统在计划时间关机开机后立即执行错过补偿 ​ [Install] WantedBytimers.target #定时单元第四步启动 Timer[rootgald ~]# systemctl daemon-reload #每次写完system的文件都要使用 [rootgald ~]# systemctl enable backup-timer.timer #设置开机自动启动 [rootgald ~]# systemctl start backup-timer.timer #开启定时任务 [rootgald ~]# systemctl list-timers #查看所有的定时任务 NEXT LEFT LAST PASSED UNIT Sat 2026-07-25 01:22:07 CST 59min Fri 2026-07-24 07:25:00 CST 59min ago dnf•makecache.timer Sat 2026-07-25 01:30:34 CST 1h 8min Sat 2026-07-25 00:00:00 CST 22min ago fwupd•refresh.timer Sat 2026-07-25 22:22:07 CST 21h Fri 2026-07-24 07:25:00 CST 2h 0min ago systemd•tmpfiles-clean.timer Sun 2026-07-26 00:00:00 CST 23h - - backup•timer.timer Sun 2026-07-26 00:08:39 CST 23h Sat 2026-07-25 00:21:53 CST 19s ago logrotate.timer Mon 2026-07-27 01:38:13 CST 2 days Wed 2026-07-22 19:05:49 CST - fstrim.timer 6 timers listed. Pass --all to see loaded but inactive timers, too.字段值含义NEXTSun 2026-07-26 00:00:00 CST下次执行时间LEFT23h还要约23小时LAST-从未执行过PASSED-从未执行过Cron和Systemd对比对比项CronSystemd Timer生成的备份文件/backup/log-cron-日期.tar.gz/backup/log-timer-日期.tar.gz配置方式一行crontab两个单元文件日志查看tail -f /var/log/cronjournalctl -u backup-timer.service适合场景简单任务复杂任务OnCalendar时间表达式表达式含义daily每天 00:00:00weekly每周一 00:00:00monthly每月1号 00:00:00hourly每小时整点boot系统启动时--* 02:00:00每天凌晨2点Mon..Fri 09:00:00工作日上午9点* - - *-01 04:00:00每月1号凌晨4点*:15:00每十五分钟执行一次选型建议场景推荐方案原因简单单条命令Cron配置简单一行搞定日常运维脚本Cron习惯使然够用需要依赖其他服务Systemd Timer可指定After需要详细日志追踪Systemd Timer自动集成journalctl需要秒级精度Systemd TimerCron 只能到分钟需要错过执行补偿Systemd TimerPersistenttrueRocky 与 Ubuntu 的定时任务差异对比项Rcoky10Ubuntu26.04crond 服务名crondcron查看cron日志/var/log/cron/var/log/syslog(grep cron)systemctl 命令同左同左journalctl 命令同左同左
延伸阅读

更多相关文章

2026/9/19 21:28:34

SQL Sever入门

SQL Sever入门 一、建库建表 1. 创建数据库 如果需要创建数据库,可能会出现数据库名字重名的现象,我们可以使用如下代码查询数据库名是否存在,存在则删除此数据库。(删除有风险,请注意!!&#x…

2026/9/19 21:28:40

风光储联合系统仿真建模与并网控制实践

1. 风光储联合并网控制概述风光储联合系统作为新能源电力领域的重要解决方案,通过将风电、光伏与储能设备协同控制,有效解决了可再生能源发电的间歇性和波动性问题。这种系统在实际电网接入时,需要精确的并网控制策略来确保电能质量、系统稳定…

2026/9/23 10:29:21

闭环风扇-EXTI真测RPM与快充协商供电

STM32 闭环风扇:PA0 EXTI 真测 RPM CH224K 快充协商供电(附完整工程) 标签:STM32、STM32F103C8T6、EXTI、DS18B20、WS2812、Type-C、CH224K、嵌入式硬件 仓库:https://github.com/kaka12331/stm32-closed-loop-fan 这…

2026/9/25 2:07:40

Matlab实现2×2 Alamouti双发双收MIMO仿真与误码率分析

简介:一套基于Alamouti原始论文的22双发双收空间分集编码MATLAB仿真实现,面向无线通信与MIMO系统学习、科研的工程师、研究生及高年级本科生,用于直观理解Alamouti方案的工作原理、解码流程与性能表现。方案在两根发射天线、两根接收天线下可…

2026/9/25 2:07:40

Windows TXT文件打不开?实为文件关联断裂的深度修复指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/25 2:07:40

VC2008中用CTabSheet实现可嵌入Tab主界面

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/25 2:07:40

上位机与下位机架构解析:C#与C++在工业控制中的分工与实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/25 2:07:40

TIA博途S7-1200/1500 CPU资源查看与优化指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/25 2:02:39

Windows 上部署 SDRangel:预编译包与源码编译全流程避坑指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/24 20:24:47

GAMP 5 基于风险的计算机化系统验证:软件分类与审计追踪实践

简介:《A Risk-Based Approach to Compliant GxP Computerized Systems》即业内熟知的GAMP 5指南,面向制药企业质量与IT合规人员、验证工程师及计算机化系统管理者,用于解决GxP法规环境下系统合规性难以科学落地的问题。文档以风险管理为主线…

2026/9/23 12:06:55

安全托管MSSP实战:从静态防御到人机协同的攻防运营与应急响应

简介:这份PPT围绕互联网业务安全托管服务展开,面向企业安全负责人、IT运维人员及关注MSSP/MSS选型的读者,重点回应传统安全过度依赖人工、碎片化静态防御难以对抗产业化攻击等痛点。资源共1个pptx文件,包体约30.63MB,以…

2026/9/25 0:02:35

AI元人文:从工具使用到思维重构的深度探索

最近半年我一直在琢磨一件事:AI元人文到底是什么?说白了,就是“用元视角重新审视人与AI的关系”,也在“探索AI如何反向逼着我们发现自己的思考边界”。标题里的“元探索”,在我看就是一层套一层的追问——当你用AI解决…

2026/9/25 0:02:35

Python+CNN车牌识别实战:从数据预处理到模型训练与部署

简介:基于Python与卷积神经网络的车牌识别项目,面向计算机视觉初学者及智能交通开发者,目标是帮助用户掌握从数据预处理、模型构建到实际部署的完整流程。压缩包共25个文件,包含jpg/png图像样本、py训练脚本、md说明文档、dat数据…

2026/9/25 0:02:35

Vim基础操作全攻略:保存退出、模式切换与高频命令实战

1. 项目概述1.1 核心需求解析今天聊聊Vim。写这个题目的原因是:几乎每个后端开发者、运维人员、数据工程师某天都会遇到一个场景——深夜加班,服务器登录界面只有黑底白字,编辑器只有vi/vim,你必须在五分钟内完成一次配置修改并保…

2026/9/22 16:34:32

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/22 20:01:30

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/22 13:25:41

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑