Теперь самое интересное. Нам необходимо создать задание, чтобы наш скрипт /scripts/backup.save запускался в заданное время в определённые дни. Нам необходимо, чтобы наш скрипт запускался каждую субботу в полночь.
Для организации заданий в Linux существует штатная команда cron.
Хитрости, блохи и грабли: Нельзя изменять файл расписания, просто открыв его в текстовом редакторе. Для его редактирования необходимо использовать команду crontab -e .
Для создания запуска по расписанию выполним следующее:
- Получаем права root
- С помощью текстового редактора nano создадим файл 123:
root@File-SRV:~# nano /scripts/123
Хитрости, блохи и грабли: название файла и его местоположение роли не играют!
- Добавим такие строки в конце файла:
SHELL=/bin/bash
MAILTO=user
00 00 * * 6 /scripts/backup.save
Хитрости, блохи и грабли: обратим внимание на последнюю строку 00 00 * * 6 /scripts/backup.save. Именно она обозначает расписание. Она расшифровывается так:
* * * * * выполняемая команда
╥ ╥ ╥ ╥ ╥
║ ║ ║ ║ ║
║ ║ ║ ║ ╚═══╡ День недели (0 - 7) (Воскресенье =0 или =7)
║ ║ ║ ╚═════╡ Месяц (1 - 12)
║ ║ ╚═══════╡ День (1 - 31)
║ ╚═════════╡ Час (0 - 23)
╚═══════════╡ Минута (0 - 59)
* – любой день, месяц, час и т.д.
- Далее выполним:
root@File-SRV:~# crontab /scripts/123
- После этого в каталоге /var/spool/cron/crontabs/ будет создан файл "root" примерно с таким содержимым:
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (/scripts/123 installed on Wed Mar 26 23:33:30 2014)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)
SHELL=/bin/bash
MAILTO=user
00 00 * * 6 /scripts/backup.save
Увидеть наше задание можно с помощью команды:
crontab -l
|