Bumalik sa blog
Mayo 23, 2026Mga Gabay

Paano Mag-set Up ng Mga Trabaho ng Cron sa Linux Server

Alamin ang cron syntax, pag-edit ng crontab, karaniwang mga halimbawa ng pag-iiskedyul, at pag-log para sa mga awtomatikong gawain sa VPS.

Paano Mag-set Up ng Mga Trabaho ng Cron sa Linux Server

Ang Cron ay ang karaniwang Linux scheduler para sa pagpapatakbo ng mga script at command sa mga nakapirming oras — mga backup, pag-clear ng cache, mga pagsusuri sa certificate, at higit pa. Ipinapakita ng gabay na ito kung paano gamitin ang cron sa iyong Hiddence server.

Cron syntax

Ang bawat linya ay may limang time field na sinusundan ng command:

bash
# ┌──────── minute (0-59)
# │ ┌────── hour (0-23)
# │ │ ┌──── day of month (1-31)
# │ │ │ ┌── month (1-12)
# │ │ │ │ ┌─ day of week (0-7, 0 and 7 = Sunday)
# │ │ │ │ │
# * * * * * command

# Every day at 3:00 AM:
0 3 * * * /usr/local/bin/backup.sh

# Every 15 minutes:
*/15 * * * * /usr/local/bin/check.sh

I-edit ang crontab

Gamitin ang crontab -e para sa kasalukuyang user. Para sa mga gawaing ugat (karamihan sa mga trabaho sa system), gumamit ng sudo:

bash
# Edit your user crontab
crontab -e

# Edit root crontab
sudo crontab -e

# List current jobs
crontab -l
sudo crontab -l

Mga karaniwang halimbawa

  • 0 2 * * * — araw-araw na backup sa 2:00 AM
  • 0 */6 * * * — tuwing 6 na oras
  • 0 0 * * 0 — tuwing Linggo ng hatinggabi
  • */5 * * * * — tuwing 5 minuto (gamiting mabuti)
  • @reboot /path/script.sh — tumakbo nang isang beses pagkatapos mag-reboot ng server
  • @daily /usr/bin/certbot renew --quiet — araw-araw na pagsusuri sa Certbot

Pag-log at pag-debug

I-redirect ang output sa isang log file para malaman mo kung nabigo ang isang trabaho:

bash
0 3 * * * /usr/local/bin/backup.sh >> /var/log/backup-cron.log 2>&1

# View cron execution in system log:
grep CRON /var/log/syslog   # Ubuntu
grep CRON /var/log/cron      # CentOS

Mga tip

  • Gumamit ng mga absolute path sa mga cron command
  • Subukan ang mga script nang manu-mano bago idagdag sa crontab
  • Itakda ang MAILTO=your@email.com sa crontab para sa mga error na email (kung naka-configure ang mail)
  • Mas gusto ang mga systemd timer para sa mga kumplikadong dependency sa mga modernong system
  • Huwag magpatakbo ng mabibigat na gawain bawat minuto — maaari itong mag-overload sa VPS