Різниця між / etc / crontab та "crontab -e"


42

Яка різниця між розташованим у /etc/crontabньому кронтабом та кронтабом, який можна редагувати за допомогою crontab -e?

Відповіді:


51

Як сказав Ігнасіо, /etc/crontabце системний кронт.

Формат такого /etc/crontabвиглядає так:

# m h dom mon dow user      command
*   *  *   *   *  someuser  echo 'foo'

в той час, crontab -eяк на кожного користувача, варто згадати, без -uаргументів команда crontab переходить до поточних користувачів crontab. Ви можете зробити crontab -e -u <username>для редагування кронтабуляції конкретних користувачів.

Помітьте, що у crontab на кожного користувача немає поля "user".

# m h  dom mon dow  command
*   *   *   *   *   echo 'foo'

Аспект кронтабів, який може бути заплутаним, полягає в тому, що корінь також має власний кронтаб. наприклад crontab -e -u root, не буде редагувати /etc/crontab Див. Налаштування крона .

У більшості дистрибутивів Linux, на кроні користувачі, як правило, зберігаються в: /var/spool/cron/crontabs/<username>(vixie-cron).

Розподіли на основі RHEL зберігаються в /var/spool/cron/<username>. (корона)


FYI, шлях, наведений вище, невірний: Crontabs на кожного користувача зберігаються у / var / spool / cron / crontabs / <username> (я два рази намагався подати цю просту корекцію.)
MartyMacGyver

1
... і це виправлено зараз.
MartyMacGyver

Насправді, він зберігається в /var/spool/cron/rootкореневій crontab користувача на системі RHEL 6. Не перевіряли Ubuntu, але сказати "типово" здається трохи розтягнутим.
Wildcard

@Wildcard Я думаю, що "зазвичай" - це чесне слово. RHEL distros ship w / "cronie" (і я вважаю анакроном), що є їх вилкою ISC-Cron / vixie cron. Я не думаю, що це розтягнення, у будь-якому випадку я оновив свою відповідь, щоб включити більше деталей.
скриулер

Для швидкого пошуку шляхів через дистрибутив, знайдіть рядок path[crontabs]у бібліотеці "Шляхи" CFEngine і перевірте контекст (попередні рядки контексту виглядають, наприклад, як redhat::). Варіантів більше, ніж ви думаєте; наприклад, SUSE ставить їх у /var/spool/cron/tabs. (Абстрагування розбіжностей у дистрибутиві - одна з причин, що CFEngine був створений спочатку, тому це часто є гарною посиланням.)
Wildcard

5

Один - це системний crontab, і його можна редагувати лише коренем, а інший - crontab користувача, і його можна редагувати користувачем і існує на кожного користувача.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.