Портал для веб-мастера
Вход пользователей
Поиск статей
WoWeb.ru » Статьи » Операционные системы » Linux/Unix

Используем Cron

Данная заметка предназначенна для тех, кто собирается работать с cron, но еще не знает как все это делается. Я в кратце попробую объяснить что такое cron, для чего он нужен да и как вообще с ним работать. Надеюсь, что приведенная тут информация будет интересна и может быть даже полезна :)

Итак что такое cron... cron это программа которая позволяет вам в определенные вами моменты времени производить те или иные действия. Например запускать на выполнение какую либо программу или скрипт, обновлять данные и многое другое. Кстати, сразу же замечу, что cron это кусок от unix , так что не ищите его на Windows :) Там для этой цели используется совершенно другая вещь.

Очень часто cron используется для ротации логов, обновления сайтов выполнения каких нибудь ежеминутных проверок или прочего. Так например я его использую в качестве помощника по архивации своего сайта. Написанный скрипт по архивации всех данных запускается по крону каждую неделю, в следствии чего я избавлен от головной боли 'а не забыл ли я чего архивнуть...'.

Да ну ладно, я думаю вы и так знаете (или уже догадались) для чего нужен крон. Так что посмотрим, как все это работает.

Для начала можно проверить, а запущен ли вообще этот самый крон ?

Команда ps ax |grep cron должна вывести вам то-то похожее на

407 ?      S  0:00 crond
744 pts/0  S  0:00 grep cron

Т.е. если вы видете crond - то все в порядке, крон на месте.

Иначе вам просто 'повезло', либо на вашей машине не установлен крон, либо функции крона выполняет какой-то другой софт. Хотя такие ситуации необычайно редки.

Так что будем считать что все в порядке, и двинемся далее.
pages::
Как правило все ваши данные (задания) для крона хранятся по адресу /var/spool/cron/ в файле с именем соответствующим вашему логину. Например /var/spool/cron/vadim

Внутри файл выглядит следующим образом:
SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=vadim HOME=/home/vadim # run-parts 01 * * * * command 02 4 * * * command 
Первые четыре строки просто обозначают настройку параметров окружения и на них не стоит обращать внимание (как в прочем и менять тоже), так как это задается уже самой системой.

А вот на следующие строки внимание уже стоит обратить...

Формат этих строк выглядит следующим образом:

Нужная минута часа для запуска (0-59)
Нужный час дня для запуска (0-23)
Нужный день месяца (0-30)
Нужный месяц года (1-12)
Нужный день недели (0-6)
Выполнимая команда.

Значок * обозначает слово каждый (день, год, месяц, час).

Итак например строка 01 * * * * command будет обозначать запуск программы каждый час в одну минуту.

А строка 02 4 * * * command означает запуск программы каждый день в 4 часа утра в две минуты.

В качестве уже более полного примера могу привести следующее:
01 * * * * echo `date` 'Hi man' >>$HOME/cron.res

Данное задание каждый час будет добавлять в файл cron.res текст Hi man и текущую дату.

Итак мы уже знаем как и по какому принципу работает крон, и поэтому мы сейчас перейдем к заключительному этаму - его редактированию.

Редактирование крона происходит при помощи команды crontab.

crontab -e : войти в режим редактирования
crontab -l : вывести все задания крона
crontab -r : удалить все задания

Со второй и третьей командой обычно все ясно.

С первой командой просто хочу заметить, что редактирование будет простым открытием файла с заданиями через текстовый редактор. Как правило по умолчанию этим редактором является vi.

Но я так и не научился пользоваться этим редактором, поэтому использую pico.

Смену редактора можно провести командой
export EDITOR='pico' а далее и запускать команду редактирования.

Вот вроде-бы и все. Удачного вам крона :)
Автор: Vadim Kravciuk · Добавлена: 2002-12-14
Источник статьи · Просмотров: 11293 · Рейтинг: 4.3

Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]

Категории раздела
Flash
Apache
WWW
PhotoShop
Веб-дизайн
Раскрутка и реклама
Базы данных
3D графика
Хостинг
Истории веб-мастеров
Web-технологии
Сетевая безопасность
Программирование для Web
Операционные системы

Новые статьи
Лучшие статьи
Популярные статьи
Комментируемые статьи
Разделы сайта
Скрипты
Статьи
Шрифты
Флэш исходники
HTML шаблоны
Партнерки
Клипарты
Смайлы
Фоны
Гифы
Иконки
Опрос сайта
Есть ли у вас свой сайт?
Всего ответов: 141130
Наша кнопка
WoWeb.ru - портал для веб-мастера