在 Debian 系統中,你可以使用 systemd
定時器來定時啟動任務
首先,你需要創建一個 systemd 服務文件,該文件將定義要執行的任務。通常,服務文件位于 /etc/systemd/system/
目錄下。例如,創建一個名為 my-task.service
的文件:
sudo nano /etc/systemd/system/my-task.service
在打開的編輯器中,添加以下內容:
[Unit]
Description=My custom task
[Service]
Type=oneshot
ExecStart=/path/to/your/script.sh
將 /path/to/your/script.sh
替換為你要執行的腳本的實際路徑。保存并關閉文件。
接下來,創建一個 systemd 定時器文件,該文件將定義任務的執行計劃。通常,定時器文件也位于 /etc/systemd/system/
目錄下。例如,創建一個名為 my-task.timer
的文件:
sudo nano /etc/systemd/system/my-task.timer
在打開的編輯器中,添加以下內容:
[Unit]
Description=Run my-task.service every day at 10:00 AM
[Timer]
OnCalendar=*-*-* 10:00:00
Persistent=true
[Install]
WantedBy=timers.target
在這個例子中,我們設置了每天上午 10 點執行任務。你可以根據需要修改 OnCalendar
行以設置其他時間表。保存并關閉文件。
現在,你需要啟用并啟動定時器。運行以下命令:
sudo systemctl enable my-task.timer
sudo systemctl start my-task.timer
這將啟用定時器并在下次預定時間啟動任務。
要檢查定時器的狀態,可以使用以下命令:
sudo systemctl list-timers --all
這將顯示所有已配置的定時器及其狀態。找到 my-task.timer
并查看其狀態。
如果任務已執行,你可以查看任務的日志以獲取更多信息。使用以下命令查看日志:
journalctl -u my-task.service
這將顯示與 my-task.service
相關的所有日志條目。