Гже хранится crontab файл юзера?
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум crontab для отдельных юзеров (2015)
- Форум crontab (2017)
- Форум crontab (2017)
- Форум Crontab (2009)
- Форум crontab (2008)
- Форум crontab (2004)
- Форум crontab (2005)
- Форум crontab (2005)
- Форум crontab. (2002)
- Форум crontab (2013)
Форум русскоязычного сообщества Ubuntu
Страница сгенерирована за 0.042 секунд. Запросов: 25.
- Сайт
- Об Ubuntu
- Скачать Ubuntu
- Семейство Ubuntu
- Новости
- Форум
- Помощь
- Правила
- Документация
- Пользовательская документация
- Официальная документация
- Семейство Ubuntu
- Материалы для загрузки
- Совместимость с оборудованием
- RSS лента
- Сообщество
- Наши проекты
- Местные сообщества
- Перевод Ubuntu
- Тестирование
- RSS лента
© 2012 Ubuntu-ru — Русскоязычное сообщество Ubuntu Linux.
© 2012 Canonical Ltd. Ubuntu и Canonical являются зарегистрированными торговыми знаками Canonical Ltd.
Настройка задач Cron
Основной файл конфигурации cron, /etc/crontab , содержит следующие строки:
SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root HOME=/ # run-parts 01 * * * * root run-parts /etc/cron.hourly 02 4 * * * root run-parts /etc/cron.daily 22 4 * * 0 root run-parts /etc/cron.weekly 42 4 1 * * root run-parts /etc/cron.monthly
Первые четыре строки — это переменные, настраивающие среду окружения, в котором будут работать задачи cron. Значение переменной SHELL сообщает системе о том, какую оболочку использовать (в этом примере будет использована оболочка bash), а переменная PATH определяет пути, используемые для выполнения команд. Результат выполнения задач cron будет выслан по электронной почте пользователю, определённому в переменной MAILTO . Если в качестве значения переменной MAILTO задана пустая строка ( MAILTO=»» ), электронные письма отправляться не будут. Переменная HOME задаёт домашний каталог, используемый при выполнения команд или сценариев.
Каждая строка в файле /etc/crontab имеет следующий формат:
minute hour day month dayofweek command
minute — любое целое число от 0 до 59
hour — любое целое от 0 до 23
day — любое целое от 1 до 31 (день должен быть корректным, если указан месяц)
month — любое целое от 1 до 12 (или короткое название месяца, например: jan, feb и так далее)
dayofweek — любое целое от 0 до 7, где 0 или 7 означает Воскресенье (или короткое название дня недели, например: sun, mon и так далее)
command — команда, которая должны быть выполнена. Командой может быть как простая команда, например, ls /proc >> /tmp/proc , или команда запуска написанного вами специального сценария.
Для любых указанных выше параметров можно использовать звездочку (*), что означает все допустимые значения. Например, если поставить звёздочку в значении месяца, команда будет выполняться каждый месяц во время, указанное другими параметрами.
Дефис (-) между целыми числами обозначает диапазон чисел. Например, 1-4 означает целые числа 1, 2, 3 и 4.
Список значений, разделенных запятыми (,), обозначает перечень. Например, перечисление 3, 4, 6, 8 означает четыре указанных целых числа.
Косая черта (/) используется для определения шага значений. Целочисленное значение может быть пропущено в диапазоне, если после диапазона указать / < целое >. Например, значение минут 0-59/2 , определяет, что будет пропущена каждая вторая минута. В качестве шага значений также может быть указана звёздочка. Например, значение месяца */3 определяет, что будет пропущен каждый третий месяц.
Любые строки, начинающиеся с символа решетки (#), являются комментариями, и не обрабатываются.
Пример 22-1. Примеры файлов crontab
# record the memory usage of the system every monday # at 3:30AM in the file /tmp/meminfo 30 3 * * mon cat /proc/meminfo >> /tmp/meminfo # run custom script the first day of every month at 4:10AM 10 4 1 * * /root/scripts/backup.sh
Как видно из файла /etc/crontab , в нём используется сценарий run-parts , чтобы запускающий сценарии в каталогах /etc/cron.hourly , /etc/cron.daily , /etc/cron.weekly и /etc/cron.monthly соответственно ежечасно, ежедневно, еженедельно и ежемесячно. Файлы в этих каталогах должны быть сценариями оболочки.
Если задачи cron должны выполняться по расписанию, но не ежечасно, ежедневно, еженедельно или ежемесячно, их можно добавить в каталог /etc/cron.d . Все файлы в этом каталоге имеют тот же синтаксис, что и /etc/crontab .
Демон cron каждую минуту ищет изменения в файле etc/crontab и каталогах etc/cron.d/ и /var/spool/cron . Если какие-либо изменения будут найдены, они загружаются в память. Таким образом, демон не нуждается в перезапуске при изменении файла crontab.
Другие пользователи (не root) также могут настраивать задачи cron, используя программу crontab . Все созданные пользователями файлы crontab, хранятся в каталоге /var/spool/cron и выполняются, от имени создавшего их пользователя. Чтобы создать файл crontab для пользователя, войдите в систему под его именем и введите команду crontab -e , чтобы отредактировать crontab пользователя, с помощью редактора, указанного в значении переменной окружения VISUAL или EDITOR . Этот файл использует тот же формат, что и /etc/crontab . Когда изменения фала crontab будут сохранены, этот файл crontab будет записан в соответствии с именем пользователя, под названием /var/spool/cron/ username .
Запуск и остановка службы
Чтобы запустить службу cron, выполните следующую команду: /sbin/service crond start . Чтобы остановить её, выполните команду: /sbin/service crond stop . Рекомендуется, чтобы эта служба запускалась при загрузке системы. Обратитесь к Главе 8 за указаниями по настройке автоматического запуска службы cron при загрузке системы.
| Назад | Начало | Вперед |
| Автоматизация задач | Вверх | Anacron |
Где хранятся задания cron?
Нужно добавить много однотипных cron-задач. Соответственно вручную через панель управления делать это не слишком охота. Может они хранятся в каком-то файле, который можно скачать, подправить в notepad, залить обратно?
- Вопрос задан более трёх лет назад
- 53640 просмотров
Комментировать
Решения вопроса 1

Оптимус Пьян @marrk2 Автор вопроса
Правильный ответ /var/spool/cron
Ответ написан более трёх лет назад
Нравится 14 6 комментариев
это не самый корректный способ редактирования заданий для cron поскольку в этой директории хранятся
1. в CentOS — по одному файлу на пользователя с его заданиями, которые он добавил с помощью команды crontab
2. с Debian/Ubuntu — папки для каждого пользователя
Настоятельно не рекомендую влезать в эту директорию и править что-то там руками. Это все равно, что править файл /etc/sudoers без visudo

Оптимус Пьян @marrk2 Автор вопроса
Дмитрий Вапельник: ну да у меня CentOS там по 1 файлу на пользователя. А что делать если задания надо оптом добавить или убрать?
Дмитрий: если вы имеете права рута, то используйте директорию /etc/cron.d

Оптимус Пьян @marrk2 Автор вопроса
Дмитрий Вапельник: но в ней же нет заданий.
Дмитрий: если их там нет, то это не значит, что их туда нельзя добавить. задания добавляюсь в файлы с описанием заданий в виде
00 01 * * * rusty /home/rusty/rusty-list-files.sh
[schedule] [user] [command]
удобство в том, что Вы можете из коммандной оболочки bash (прямо из баш-скрипта) копировать-удалять подготовленные файлы заданий
в случае же если Вам руками можно/нужно редактировать задания для cron, то лучше использовать crontab
на самом деле можно делать как-угодно и как удобно, но советую делать так и опыт показывает, что удобнее телать так
А какие правам на файл с заданиями должен быть?
Ответы на вопрос 4
в Unix задачи cron-а лежат в нескольких местах:
1. /etc/cron.d — здесь можно создавать файлы с заданиями крону, которые он будет загружать и исполнять по указанному расписанию. в этих файлах нужно указывать пользователя, от имени которого будет исполнено задание
*/10 * * * * root /root/backup.db.sh
2. /etc/cron.daily , /etc/cron.hourly , /etc/cron.monthly , /etc/cron.weekly — здесь кладем скрипты, которые будут исполняться ежедневно, ежечасно, ежемесячно и еженедельно. это такие себе подготовленные расписания, которые подгружаются и исполняются в определенное время
3. crontab -e — исполнение этой команды с ключом откроет текстовый редактор для редактирования заданий крону текущего пользователя. будьте внимательны — эти задания относятся к текущему пользователю и будут исполняться от его имени
соответственно, самый просто способ для динамического редактирования заданий для крона — это манипуляция с заданиями в /etc/cron.d
Ответ написан более трёх лет назад
Комментировать
Нравится 8 Комментировать

Чебуратор тега РНР
У тебя вопрос по панели управления для клиентов системы «Йа с понтом хостер-криворучко». Cpanel и вот это вот всё.
К тегу unix оно не имеет ни малейшего отношения.
потому что в юникс можно написать
crontab список_заданий.txt
и все загрузить.
А куда грузить в твоей панели — надо спрашивать пользователей панели, а не юникса.
Впрочем, в любом случае если у тебя там » много однотипных cron-задач», то ты все делаешь неправильно.