>_ IzzyLab

Практическое задание

Cron с MAILTO и PATH

средне

В crontab пользователя root задай переменные окружения: MAILTO=admin@corp.ru и PATH=/usr/local/bin:/usr/bin:/bin, а затем добавь любую задачу, запускающую /usr/local/bin/job.sh ежечасно.

Что потренируешь:
  • cron
  • crontab
  • переменные окружения
  • формат расписания

Разбор темы

Cron исполняет задачи в урезанном окружении с минимальным PATH и без пользовательских переменных, поэтому скрипты, рабочие в терминале, в кроне часто падают с «command not found». Лечится это переменными, заданными строками вида ИМЯ=значение (без export) в начале crontab, до строк расписания — они действуют для всех задач ниже: MAILTO задаёт адрес для вывода/ошибок, PATH — каталоги поиска бинарников. Само расписание — это пять полей (минута, час, день, месяц, день недели) и команда; «ежечасно» означает фиксированную нулевую минуту при любом часе. Всё правится через crontab -e, проверяется crontab -l.

Что проверяется

  1. задан MAILTO=admin@corp.ru
  2. задан PATH в crontab
  3. задача job.sh добавлена

Как это выглядит