Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> 關於 Linux

Linux 定時任務報錯 crontab: command not found 解決:安裝 cronie 與啟動服務

編輯:關於 Linux

精簡版 Linux (如 Docker 容器、最小安裝) 預設未安裝 cron 套件,導致 crontab 指令找不到。透過 yum install cronie 安裝核心套件與 crontabs 範本,並啟動 crond 服務即可恢復定時任務功能。

crontab 安裝流程示意圖

安裝步驟 (CentOS/RHEL 6/7/8)

  1. 確認缺失:crontab -l → -bash: crontab: command not found
  2. 安裝套件:
    yum install -y cronie cronie-anacron crontabs
    # cronie: crond 守護程式
    # cronie-anacron: anacron 整合 (處理關機期間錯過的任務)
    # crontabs: 系統預設 crontab 檔案範本
  3. 驗證安裝:crontab -l → no crontab for root (正常,表示指令可用)
  4. 檢查開機自啟:chkconfig --list crond (CentOS 6) 或 systemctl is-enabled crond (CentOS 7/8)
  5. 啟動服務:
    # CentOS 6
    service crond start
    chkconfig crond on
    
    # CentOS 7/8
    systemctl start crond
    systemctl enable crond

常見問題排查

  • Debian/Ubuntu:apt-get install -y cron
  • Alpine:apk add --no-cache cronie
  • Docker 容器:需在 Dockerfile 安裝並以 CMD ["crond", "-f"] 前景運行,或使用 supercronic 輕量替代品
  • 權限問題:確保 /var/spool/cron 目錄存在且權限正確 (chmod 700、擁有者 root)

建立第一個定時任務

crontab -e
# 加入測試行:每分鐘寫入時間戳記
* * * * * date >> /tmp/cron_test.log 2>&1
# 存檔離開,稍待一分鐘查看 /tmp/cron_test.log
Copyright © Windows教程網 All Rights Reserved