news 2026/5/23 2:43:39

RockyLinux创建systemd定时器(手把手教你用systemd timer替代cron实现Linux定时任务)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
RockyLinux创建systemd定时器(手把手教你用systemd timer替代cron实现Linux定时任务)

在RockyLinux系统中,除了传统的cron工具外,还可以使用更现代、功能更强大的systemd定时器(systemd timer)来执行周期性任务。本教程将带你从零开始,详细讲解如何在RockyLinux上创建和管理systemd定时器,即使是Linux新手也能轻松掌握。

为什么选择systemd定时器?

相比传统的cron,systemd定时器具有以下优势:

  • 与systemd日志集成,便于调试和监控
  • 支持更灵活的时间表达式(如启动后延迟、随机延迟等)
  • 可以依赖其他systemd服务,实现复杂的任务调度
  • 天然支持用户级和系统级定时任务

准备工作

确保你使用的是RockyLinux 8或更高版本,并以具有sudo权限的用户登录。

步骤一:创建一个要执行的服务单元(Service Unit)

systemd定时器需要搭配一个service文件来定义具体要执行的任务。我们以每天备份日志为例。

首先,创建一个名为backup-logs.service的文件:

sudo vim /etc/systemd/system/backup-logs.service

在文件中写入以下内容:

[Unit]Description=Backup system logs daily[Service]Type=oneshotExecStart=/bin/sh -c 'tar -czf /var/backups/logs-$(date +%%Y%%m%%d).tar.gz /var/log'User=root[Install]WantedBy=multi-user.target

说明:

  • Type=oneshot表示该服务只运行一次就退出
  • ExecStart是实际执行的命令,这里将/var/log目录打包压缩到/var/backups/
  • 注意日期格式中的%%是为了在systemd中转义%符号

步骤二:创建对应的定时器单元(Timer Unit)

接下来,创建一个同名但扩展名为.timer的文件:

sudo vim /etc/systemd/system/backup-logs.timer

写入以下内容(每天凌晨2点执行):

[Unit]Description=Run backup-logs daily at 2 AM[Timer]OnCalendar=dailyPersistent=true[Install]WantedBy=timers.target

关键参数说明:

  • OnCalendar=daily等价于*-*-* 00:00:00,但更常用的是指定具体时间,例如:OnCalendar=*-*-* 02:00:00
  • Persistent=true表示如果系统在预定时间关机,开机后会立即补执行一次

步骤三:启用并启动定时器

保存文件后,重新加载systemd配置:

sudo systemctl daemon-reload

启用并启动定时器(注意:启动的是.timer文件,不是.service):

sudo systemctl enable --now backup-logs.timer

步骤四:验证和调试

查看所有激活的定时器:

systemctl list-timers --all

查看定时器状态:

systemctl status backup-logs.timer

查看最近的日志输出(用于调试):

journalctl -u backup-logs.service -n 20

常见时间格式示例

OnCalendar=中,你可以使用以下格式:

  • hourly:每小时
  • daily:每天(默认00:00)
  • weekly:每周一00:00
  • monthly:每月1号00:00
  • *-*-* 03:30:00:每天3:30
  • Mon..Fri *-*-* 09:00:00:工作日上午9点
  • *-*-1,15 10:00:00:每月1号和15号上午10点

总结

通过本教程,你已经学会了如何在RockyLinux中使用systemd定时器来替代传统cron,实现更强大、更可靠的自动化任务调度。无论是日常备份、日志清理还是系统维护,systemd timer教程都能为你提供清晰的指导。

记住,Linux定时任务是系统管理员的必备技能,而掌握RockyLinux自动化任务将极大提升你的运维效率。

提示:修改定时器或服务文件后,务必执行systemctl daemon-reload才能生效。

来源:https://www.vpshk.cn/https://www.vpshk.cn/

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/23 20:05:52

Open-AutoGLM能否颠覆传统交互?90%人不知道的神经解码黑科技

第一章:Open-AutoGLM能否颠覆传统交互?随着自然语言处理技术的不断演进,Open-AutoGLM作为新一代对话式AI框架,正试图重新定义人机交互的边界。它不仅支持多轮复杂推理,还能动态生成可执行代码、自动调用外部工具&#…

作者头像 李华
网站建设 2026/5/23 20:05:47

【AI+脑机接口前沿】:Open-AutoGLM实现意念控制的3大核心算法

第一章:Open-AutoGLM脑机接口交互辅助Open-AutoGLM 是一种面向未来人机协同的智能辅助系统,深度融合脑机接口(BCI)与大语言模型技术,旨在通过神经信号解码实现意念级指令输入,提升残障用户、高精度操作场景…

作者头像 李华
网站建设 2026/5/22 11:58:49

同质化迷局:AI绘画为何难以逃脱风格贫困?

当你在社交媒体上同时刷到第三张类似构图、相似色调的AI生成美少女或国风山水时,你可能正在见证一场视觉创作领域的“内卷”奇观。曼彻斯特大学的一项研究惊人地发现,AI生成的画作被误认为人类创作的概率,竟然**远高于真正的人类作品**。这种…

作者头像 李华
网站建设 2026/5/11 13:24:00

Open-AutoGLM与传统医疗AI对比:性能提升90%背后的架构革新

第一章:Open-AutoGLM 医疗数字人协同在现代智慧医疗体系中,Open-AutoGLM 作为基于 AutoGLM 架构开源的多智能体协同框架,正逐步推动医疗数字人系统的智能化升级。该框架通过自然语言理解、任务分解与跨智能体协作机制,实现医生助手…

作者头像 李华
网站建设 2026/5/23 14:14:51

Open-AutoGLM实战指南:5步实现跨境贸易全流程自动化

第一章:Open-AutoGLM实战指南:跨境贸易自动化概览随着全球供应链数字化进程加速,跨境贸易自动化正成为企业提升效率的核心路径。Open-AutoGLM 作为一款基于大语言模型的开源自动化框架,专为复杂业务流程设计,尤其适用于…

作者头像 李华
网站建设 2026/5/22 23:26:28

Open-AutoGLM如何重塑脑机交互:5大关键技术突破全解析

第一章:Open-AutoGLM脑机接口交互辅助 Open-AutoGLM 是一种前沿的脑机接口(BCI)交互框架,专为增强人机协同能力而设计。该系统结合了神经信号解码算法与大型语言模型(LLM),实现从脑电波到自然语…

作者头像 李华