Cron Job and Scheduled Task Checklist for VPS
Cron jobs are invisible until they break something. Backups, imports, cache warmers, SSL renewals, WordPress cron, Docker jobs and automation scripts may run in the background and consume CPU, RAM, disk or API quota.
Core principle
Scheduled tasks are part of production. Treat them like services: document them, monitor them and know how to disable them safely.
Checklist
- List user crontabs.
- List system cron directories.
- Check WordPress cron behavior.
- Identify backup jobs.
- Identify import, crawler or automation jobs.
- Check whether tasks overlap or run too often.
- Check logs for failed jobs.
- Make sure heavy jobs run during low traffic.
- Document what each task does.
- Disable risky tasks before major maintenance.
Where this helps
This checklist helps debug sudden CPU spikes, full disk, repeated API usage, failed backups, missed SSL renewal and automation loops.
When to Use This Checklist
Use this checklist when investigating hidden scheduled tasks, server spikes, repeated jobs, failed backups or automation loops.
Required Tools
SSH access, crontab, system cron folders, WordPress admin, logs, script paths
Before You Start
Do not delete cron entries immediately. First copy them somewhere and understand what each task does.
Structured Checklist Steps
- List user crontab.
- Check system cron folders.
- Check WordPress cron.
- Identify backup jobs.
- Identify import jobs.
- Identify automation scripts.
- Check schedule frequency.
- Check logs.
- Document each task.
- Disable safely if needed.
Verification Steps
- All recurring tasks are known.
- Heavy jobs are scheduled safely.
- Failed jobs are visible.
- No duplicate job runs unexpectedly.
- Documentation exists.
Rollback Plan
If disabling a task causes missing backups or automation failure, restore the saved crontab entry and adjust schedule instead of deleting it permanently.
Common Mistakes
- Forgetting cron exists.
- Running heavy tasks too frequently.
- No logs for scheduled jobs.
- Deleting crontab without backup.
- Letting jobs overlap.
Related Commands
crontab -l
sudo crontab -l
ls -la /etc/cron.d/
ls -la /etc/cron.daily/
grep CRON /var/log/syslog | tail -n 50
wp cron event list