溫馨提示×

ubuntu 定時器怎么設置超時

小樊
40
2025-10-20 12:43:52
欄目: 智能運維

在 Ubuntu 系統中,你可以使用 systemd 的定時器(timer)來實現超時功能。以下是設置定時器超時的步驟:

  1. 創建一個服務文件(例如:my-service.service),這個服務文件定義了你想要執行的操作。將此文件保存在 /etc/systemd/system/ 目錄下。
[Unit]
Description=My custom service

[Service]
ExecStart=/path/to/your/script.sh
  1. 創建一個定時器文件(例如:my-service.timer),這個文件定義了定時器的行為。將此文件保存在 /etc/systemd/system/ 目錄下。
[Unit]
Description=Run my-service.service every hour

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

[Install]
WantedBy=timers.target

在這個例子中,OnCalendar 行定義了定時器的觸發時間。這里設置為每小時執行一次。你可以根據需要修改這個值。

  1. 重新加載 systemd 配置:
sudo systemctl daemon-reload
  1. 啟用并啟動定時器:
sudo systemctl enable --now my-service.timer
  1. 檢查定時器的狀態:
sudo systemctl list-timers --all

要設置超時,你可以在你的腳本(例如:/path/to/your/script.sh)中使用 timeout 命令。例如,如果你想要在腳本運行超過 30 分鐘時終止它,可以在腳本中添加以下內容:

timeout 30m /path/to/your/command

這將在 30 分鐘后終止 /path/to/your/command。如果你想要在腳本超時時收到通知,可以使用 --signal 選項發送一個信號(例如,SIGUSR1):

timeout --signal=SIGUSR1 30m /path/to/your/command

然后,你可以在腳本中捕獲這個信號并執行相應的操作。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女