概述
anacron 会执行 `/etc/anacrontab` 文件中定义的每日、每周或每月任务。如果系统关闭导致错过任务执行时间,则在系统重新启动时执行这些任务,以防止任务丢失。这与适用于服务器等 24/7 运行系统的 `cron` 不同。
主要特点
- 防止在系统不运行时丢失任务
- 按指定周期(日/周/月)执行任务
- 基于日志文件跟踪上次执行时间
- 主要适用于台式机和笔记本电脑环境
主要选项
与 anacron 命令一起使用的主要选项。
执行控制
配置/信息
生成的命令:
请尝试组合命令。
描述:
`anacron` 执行命令。
通过组合这些选项,您可以与 AI 一起虚拟地执行命令。
使用示例
anacron 的一些常见用法示例。
手动运行 anacron
sudo anacron -s
手动执行 anacrontab 中定义的所有任务。它会在系统启动时自动运行,但您也可以根据需要手动触发它。
查看 anacrontab 文件
cat /etc/anacrontab
查看定义 anacron 任务的配置文件。
以调试模式运行
sudo anacron -d
以调试模式运行 anacron,以获取有关其正在执行哪些任务的详细信息。
仅更新时间戳而不执行任务
sudo anacron -u
不实际执行任务,而是将 anacron 上次执行任务的时间更新为当前时间。这在您想跳过特定任务时很有用。
安装
anacron 通常作为 `cronie` 或 `vixie-cron` 包的一部分预装在大多数 Linux 发行版中。如果尚未安装,您可以使用以下命令进行安装。
基于 Debian/Ubuntu
sudo apt update && sudo apt install cronie
使用 apt 包管理器安装 `cronie` 包。
基于 RHEL/CentOS/Fedora
sudo dnf install cronie
# 或
sudo yum install cronie
使用 dnf 或 yum 包管理器安装 `cronie` 包。
提示与注意事项
使用 anacron 时的一些有用提示和注意事项。
主要配置文件和目录
控制 anacron 行为的主要文件和目录。
- /etc/anacrontab: 主配置文件,其中定义了 anacron 任务的周期、延迟、任务标识符和要执行的命令。
- /var/spool/anacron/: 存储每个任务上次执行时间戳文件的目录。anacron 使用此文件来确定任务是否已错过。
与 cron 的区别
`cron` 在系统始终开启时按预定时间执行任务,而 `anacron` 则在系统关闭导致错过任务时,在系统启动后经过延迟(delay)后执行。因此,它更适合笔记本电脑或台式机等系统不总是运行的环境。`anacron` 可以与 `cron` 一起使用,`cron` 可以配置为定期运行 `anacron` 来检查错过的任务。
anacrontab 文件结构
`anacrontab` 文件中的每一行都遵循 `period delay job-identifier command` 格式。
- period: 任务的执行周期(例如,1 表示每日,7 表示每周,@monthly 表示每月)。
- delay: 系统启动后执行任务之前的等待时间(分钟)。有助于减少系统负载。
- job-identifier: 用于标识任务的唯一字符串。此名称将在 `/var/spool/anacron/` 中创建时间戳文件。
- command: 要实际执行的 shell 命令。