跳轉到內容

排程任務

排程任務用於設定在指定時間執行的任務,例如定時備份、定時執行腳本等。

任務清單

前往任務頁面,預設會顯示排程任務清單。

排程任務

清單會顯示以下資訊:

  • 任務名稱:任務名稱
  • 任務類型:執行腳本/備份資料/日誌切割/存取 URL/同步時間
  • 啟用:是否啟用
  • 任務排程:執行排程
  • 建立時間:建立時間
  • 最後更新:最後修改時間
  • 操作:執行、檢視日誌、編輯、刪除

建立任務

點選建立任務按鈕即可建立新的排程任務。

任務類型

類型說明
執行腳本執行一個 Shell 腳本
備份資料定時備份網站、MySQL 資料庫、PostgreSQL 資料庫或目錄到選定的儲存空間
日誌切割定時切割網站或容器日誌
存取 URL向指定 URL 傳送 HTTP 請求(GET/POST/PUT/DELETE/PATCH/HEAD),可選擇性設定標頭、主體、逾時、重試次數以及忽略憑證
同步時間同步伺服器時間

對於備份資料日誌切割任務,你還可以設定保留數量,僅保留最近的備份/封存並自動清除較舊的檔案,同時選擇目標儲存空間

行程鎖

啟用行程鎖可防止重複執行:若上一次執行仍在進行中,則略過本次執行。

執行排程

支援多種排程設定:

  • 每秒:每秒執行一次
  • 每 N 秒:每隔 N 秒執行一次
  • 每分鐘:每分鐘執行一次
  • 每 N 分鐘:每隔 N 分鐘執行一次
  • 每 N 小時:每隔 N 小時執行一次
  • 每 N 天:每隔 N 天執行一次
  • 每小時:每小時在指定分鐘執行
  • 每天:每天在指定時間執行
  • 每週:每週在指定的星期與時間執行
  • 每月:每月在指定的日期與時間執行
  • 每年:每年在指定的月份、日期與時間執行
  • 重新啟動後:伺服器重新啟動後執行一次(@reboot
  • 自訂:使用 Cron 運算式

Cron 運算式

Cron 運算式格式:minute hour day month weekday

*    *    *    *    *
│    │    │    │    │
│    │    │    │    └── Day of week (0-7, both 0 and 7 are Sunday)
│    │    │    └─────── Month (1-12)
│    │    └──────────── Day of month (1-31)
│    └───────────────── Hour (0-23)
└────────────────────── Minute (0-59)

同時支援六欄位運算式以實現秒級排程,此時開頭欄位為秒(second minute hour day month weekday)。 例如,*/10 * * * * * 表示每 10 秒執行一次。

常見範例:

運算式說明
0 2 * * *每天凌晨 2 點
0 */6 * * *每 6 小時
0 0 * * 0每週日午夜
0 0 1 * *每月 1 號午夜
*/5 * * * *每 5 分鐘

不知道怎麼寫? 只要把你的需求清楚描述給 AI,讓它幫你產生即可。

Shell 任務範例

清理暫存檔案

bash
find /tmp -type f -mtime +7 -delete

重新啟動服務

bash
systemctl restart nginx

同步時間

bash
ntpdate ntp.aliyun.com

TIP

對於伺服器時間同步,你不再需要手寫 Shell 命令。 請改用專門的同步時間任務類型,它會執行面板內建的 acepanel sync-time 命令,並根據面板中設定的時間伺服器進行同步。

任務操作

啟用/停用

透過開關控制任務是否啟用。 已停用的任務不會執行。

立即執行

點選執行按鈕即可立即執行任務,無須等待排定的時間。

檢視日誌

點選日誌按鈕即可檢視任務的執行日誌。

編輯任務

點選編輯按鈕即可修改任務設定。

刪除任務

點選刪除按鈕即可刪除任務。

批次刪除

使用清單中的核取方塊選擇多個任務,然後點選頁面頂部的刪除按鈕,即可一次刪除所有選取的任務。

面板任務

任務頁面有兩個分頁:排程任務(即上文介紹的 cron 清單)與面板任務。 切換到面板任務分頁可檢視背景任務佇列,它記錄了由面板觸發的長時間執行操作(例如備份、還原以及其他排入佇列的工作)。

清單會顯示以下資訊:

  • 任務名稱:任務名稱
  • 狀態:等待中 / 執行中 / 已完成 / 失敗
  • 建立時間:任務的建立時間
  • 完成時間:任務的完成時間
  • 操作:檢視日誌、刪除

任務日誌在任務開始執行後即可檢視,任務僅在結束後(狀態為已完成或失敗)才能刪除;等待中與執行中的任務無法刪除。

TIP

若任務日誌載入失敗,請停用瀏覽器中的任何廣告攔截外掛。

注意事項

  1. 任務的執行時間以伺服器時區為準
  2. 長時間執行的任務可能會影響下一次執行;啟用行程鎖可略過重疊的執行
  3. 定期透過日誌按鈕檢查任務執行狀態