centos

centos里trigger的定时任务如何设置

小樊
43
2025-08-02 15:54:32
栏目: 智能运维

在CentOS中,使用systemd来管理定时任务。要创建一个定时任务,请遵循以下步骤:

  1. 创建一个新的服务单元文件。首先,使用文本编辑器(如nanovim)创建一个新的服务单元文件。例如,创建一个名为my-triggered-service.service的文件:
sudo nano /etc/systemd/system/my-triggered-service.service
  1. 编辑服务单元文件。在新创建的服务单元文件中,添加以下内容:
[Unit]
Description=My Triggered Service

[Service]
Type=oneshot
ExecStart=/path/to/your/script.sh

/path/to/your/script.sh替换为您要执行的脚本的实际路径。保存并关闭文件。

  1. 创建一个新的定时器单元文件。接下来,创建一个名为my-triggered-service.timer的新文件:
sudo nano /etc/systemd/system/my-triggered-service.timer
  1. 编辑定时器单元文件。在新创建的定时器单元文件中,添加以下内容:
[Unit]
Description=Run My Triggered Service every hour

[Timer]
OnCalendar=*-*-* *:00:00
Persistent=true
Unit=my-triggered-service.service

[Install]
WantedBy=timers.target

在这个例子中,我们设置了定时任务每小时执行一次。您可以根据需要调整OnCalendar选项以设置所需的执行计划。

  1. 启用并启动定时器。保存并关闭文件后,运行以下命令以启用并启动定时器:
sudo systemctl enable --now my-triggered-service.timer
  1. 检查定时器的状态。要检查定时器的状态,请运行以下命令:
sudo systemctl list-timers --all

您应该看到my-triggered-service.timer在列表中,并显示下一次计划执行的时间。

现在,您的定时任务已经设置好了。每当到达指定的时间,systemd将自动触发并执行my-triggered-service.service中定义的脚本。

0
看了该问题的人还看了