Назад да блога
Май 23, 2026Кіраўніцтва

Як наладзіць заданні Cron на серверы Linux

Вывучыце сінтаксіс cron, рэдагаванне crontab, агульныя прыклады планавання і вядзенне журналаў для аўтаматызаваных задач на VPS.

Як наладзіць заданні Cron на серверы Linux

Cron - гэта стандартны планавальнік Linux для запуску сцэнарыяў і каманд у вызначаны час - рэзервовае капіраванне, ачыстка кэша, праверка сертыфікатаў і многае іншае. Гэта кіраўніцтва паказвае, як выкарыстоўваць cron на вашым серверы Hiddence.

Сінтаксіс Cron

Кожны радок мае пяць палёў часу, за якімі ідзе каманда:

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

Рэдагаваць crontab

Выкарыстоўвайце crontab -e для бягучага карыстальніка. Для каранёвых задач (большасць сістэмных задач) выкарыстоўвайце sudo:

bash
# Edit your user crontab
crontab -e

# Edit root crontab
sudo crontab -e

# List current jobs
crontab -l
sudo crontab -l

Агульныя прыклады

  • 0 2 * * * — штодзённае рэзервовае капіраванне ў 2:00
  • 0 */6 * * * — кожныя 6 гадзін
  • 0 0 * * 0 — кожную нядзелю апоўначы
  • */5 * * * * — кожныя 5 хвілін (выкарыстоўвайце асцярожна)
  • @reboot /path/script.sh — запусціць адзін раз пасля перазагрузкі сервера
  • @daily /usr/bin/certbot renew --quiet — штодзённая праверка Certbot

Запіс і адладка

Перанакіраванне вываду ў файл часопіса, каб вы ведалі, калі заданне не выканана:

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

Парады

  • Выкарыстоўвайце абсалютныя шляхі ў камандах cron
  • Праверце скрыпты ўручную перад даданнем у crontab
  • Усталюйце MAILTO=your@email.com у crontab для паведамленняў электроннай пошты пра памылкі (калі пошта настроена)
  • Аддайце перавагу таймерам systemd для складаных залежнасцей сучасных сістэм
  • Не запускайце цяжкія задачы кожную хвіліну - гэта можа перагрузіць VPS