ПредишенСледващото

Полезни съвети за Linux задача график с Cron и в

Linux® и UNIX® системи позволяват да планирате както едно време и повтарящи се задачи. В тази статия, взета от учебник изпит ЛПИ 102: административни задачи (LPI изпит 102 подготвям: административни задачи). Тя показва как да го направя.

Изпълнение на задачи на редовни интервали

Извършване задачи на редовни интервали, контролирани от съоръжението за Cron. който се състои от демон crond и набор от таблици, които описват какво е работа и колко често трябва да се направи. Деймън се събужда всяка минута и проверява график файл (crontabs), за да се определи какво трябва да се направи. Потребители управляват тези файлове с помощта на командата кронтаб. Crond процес демон обикновено започва инициализация (първоначален) при стартиране на системата.

За простота, нека предположим, че трябва редовно да изпълните командата е показано на Обява 1. Той просто казва, датата и часа, но тя може да бъде пример за да разберете как да използвате кронтаб за задаване на задачи за Cron, тъй като ние се учим от изхода, когато е било извършва. Създаване на записи в график файл изисква съответствие със скрити софтуер черупки метасимвола, така че би било по-добре да го направи с помощта на прости команди и параметри. В този пример, ехо команда ще се проведе от /home/ian/mycrontab.sh скриптове, които не се нуждаят от възможности. По този начин, не potrebutsya усърден труд с скрити символи.

Списък 1. Пример на проста команда

Създаване на график файл

Всеки запис в график файл се състои от шест области:

  1. минута
  2. час
  3. ден от месеца
  4. месец
  5. ден от седмицата
  6. Низ, който трябва да се управлява с помощта на од

Протокола и часа трябва да бъде в интервала 0-59 и от 0 до 12, съответно, докато ден на месец и месец - от 1 до 31 и от 1 до 12, съответно. Ден от седмицата варира от 0 до 6, където 0 = неделя. Тя може да се нарича слънце, пн, вт, и т.н. Шестият областта - това е всичко, което трябва за пети и се интерпретира като низ да премине към од. Знакът процента (%) се прехвърля в началото на линията, така че ако искате да имате% или всеки друг специален знак, сложи наклонена черта пред него (\). Низът преди първия предава% в мека обвивка, и всичко след%, е в стандартния вход.

Различните области, свързани с времето, могат да имат определена стойност, диапазон от стойности, като например 0-10 или слънце-ср, или разделени със запетая списък на единични стойности или интервали. До известна степен изкуствено създаден запис в график файл за екип от нашия пример, това може да изглежда като примера в Обява 2.

Обява 2. Пример за прост график файл

Какво ще кажете за изхода?

Може би се чудите какво се случва с изхода на команда. Повечето от екипите, работещи с Cron функция, насочва изхода към журнала чрез Syslog функция, която се обсъжда в урок LPI изпит 102: административни задачи (LPI изпит 102 подготвям: Административни задачи). Въпреки това, на всеки изход, който се изпраща на стандартния изход, ще бъде изпратено до потребителя. Обява 3 показва продукцията, която може да получите от нашия пример команда.

Обява 3. Cron продукция, получена по пощата

Къде е моят график файл?

файл приложения (кронтаб), което сте създали с командата кронтаб. се съхранява в / и т.н. / макара / Cron под потребителското име, че го е създал. По този начин, графици файл, който е обсъдено по-горе, се съхраняват в / и т.н. / макара / Cron / Ian. Знаейки това, вие няма да се изненадате, че командата кронтаб. като ако съществува. е SUID-програма, която работи с корен привилегии.

/ И т.н. / кронтаб

В допълнение към потребителски файлове графици в / Var / макара / Cron Cron също така проверява / и т.н. / кронтаб и файловете в директорията /etc/cron.d. В тези файлове, графиците на системата имат друго поле, между петата съответния ден от седмицата, както и на екипа. Тя идентифицира потребителя, за които не сте в екип, като правило, този потребител - корен. / И т.н. / кронтаб може да изглежда като примера в Обява 4.

Обявата 4. / и т.н. / кронтаб

В този пример, действителната работа се извършва чрез командата навечерието части. който работи скриптове от /etc/cron.hourly, /etc/cron.daily др.; / И т.н. / кронтаб просто контролира режима време на периодични задачи. Моля, имайте предвид, че всички команди се изпълняват като корен. Имайте предвид също, че файлът може да съдържа график задача да променливите на черупки, които ще бъдат инсталирани преди да пуснете команди.

функция Cron е добро за системи, които работят непрекъснато. В случаите, когато системата може да бъде доста дълго време на разстояние, като в лаптопи, планираните ракети задачи, които обикновено ежедневно, ежеседмично или ежемесечно предоставя на Крон, могат да изпълняват функцията на anacron (което означава "анахронизъм Cron", "анахронизъм Cron"). Anacron не поддържа почасово изпълнение на задачите.

Anacron държи TIMESTAMP файлове в / Var / макара / anacron, което ги записва, когато работата е свършена. В началните проверки anacron колко дни са минали от последната задача за изпълнение, и да го изпълнява, ако е необходимо. Таблица с назначения за anacron файл, съхранявани в / и т.н. / anacrontab, формата на които се различават леко от / и т.н. / старица. Точно както / и т.н. / кронтаб, / и т.н. / anacrontab може да включва монтаж на околната среда. Всяка работа съответства на четири области:

Период - броя на дните, но можете да я определят като @monthly, задачата да се извършва само веднъж месечно, независимо от това колко дни там. Забавяне - колко минути трябва да изчакаме още от времето, когато задачата е готова да работи, за да го стартирате. Това се използва, за да се избегнат проблеми потоци, когато системата е включена. идентификатор задача може да съдържа всеки не-празен характер освен черти (/).

И / и т.н. / кронтаб, и / и т.н. / anacrontab модифицирана чрез директно редактиране. Не е необходимо да използвате командата старица. да актуализира тези файлове или файлове в /etc/cron.d директория.

Извършване на задачата в определен час

Може да е необходимо за изпълнение на задача само веднъж, и го правите редовно. За тази цел използвайте по команда. Задачите трябва да бъдат извършени, се четат от файл, определен с флага -F. или от стандартния вход стандартния вход, освен ако -f не се използва. -м флаг изпраща имейл на потребителя, дори и ако отборът не разполага с стандартния изход. Най-V флаг показва времето, когато работата ще върви преди да сте прочели тази работа. Времето се показва в изхода.

Обява 5 показва пример за сценарий на работа mycrontest.sh. както е използван по-рано. Обява 6 показва продукцията, която се изпраща до потребителя след започване на работа. Моля, имайте предвид, че тя е малко по-компактен от този, който е изпратил Cron.

Обява 5. Използване на по команда
Обява 6. Изходни задача започна в командния

Указание за необходимостта от време може да бъде доста сложна. Обява 7 показва няколко примера. Повече informauiyu може да се намери на страницата на човек, посветен на най-команда. в / ЮЕсАр / акции / док / в / timespec или /usr/share/doc/at-3.1.10/timespec тип файл на файла, където отговаря на версията 3.1.10 в пакета.

Обява 7. ценности време с по команда

За екипа на съществува и опцията -q (опашка - поръчката). Увеличаването на стойността на приоритета увеличава хубаво да настроите. Има и команда партида. който е подобен на. освен че командите се изпълняват само когато системата е достатъчно малък, зареден. Подробностите за тези свойства са описани в страницата за човека.

Управление на планирани задачи

Обява 8. Показани планирани заявки
Обява 9. При използване на най-C с номер на работа

Моля, имайте предвид, че съдържанието на нашия скрипт който е копиран вграден в документ, който ще бъде изпълнен софтуер черупка е посочено в променливата SHELL или / хамбар / SH, ако променливата SHELL не е зададен. В урок LPI изпит 101 тема 103: GNU команди и UNIX (LPI изпит 101 подготвям, Тема 103: GNU и UNIX команди) можете да видите вградени документи, ако е необходимо.

Изтриване на планирани задачи

Всички планирани в хронологичната задачи Cron могат да бъдат отстранени с -r команда. както е показано в Пример 10.

Обява 10. Показани и изтриване на Cron работни места

За да изтриете Cron или anacron системни задачи, редактирате / и т.н. / кронтаб, / и т.н. / anacrontab или да редактирате файлове от /etc/cron.d.

Един или повече задачи, планирани с помощта на най. Можете да изтриете отбор atrm с номера на работа. Множество работни места трябва да бъдат разделени от интервал. Обявата 11 показва пример.

Обява 11. Показани и премахване на работни места с atq и atrm

Конфигуриране на потребителски достъп до Task Scheduler

Ако не съществува /etc/cron.allow файл, всеки потребител, който не е супер корен, трябва да бъдат посочени в него, за да може да се използва кронтаб и Cron. Ако не съществува такъв файл, но има /etc/cron.deny, потребител, който не е корен на потребителя, и е в списъка на този файл не ще бъде в състояние да използват кронтаб или съоръжението за Cron. Ако нито едното, нито другото файла, само суперпотребител е разрешено да използва тази команда. Файлът е празен /etc/cron.deny (и тя е празна по подразбиране) позволява на всички потребители да работят с Cron функция.

Подобни файлове в - /etc/at.allow и /etc/at.deny.

Научете повече

Вземете продукти и технологии

  • Следващата ви проект за разработване на Linux със софтуер на IBM пробен създаване на софтуер. на разположение за изтегляне директно от developerWorks.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!