Линукс Crontab файлыг хэрхэн засах вэ?

Оршил

Линукс дээр cron гэж нэрлэгддэг дэмон нь процессуудыг тогтмол давтамжтайгаар ажиллуулдаг.

Үүнийг хийдэг арга нь скрипт ажиллуулахын тулд зарим фолдеруудыг шалгах явдал юм. Жишээ нь /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly болон /etc/cron.monthly гэсэн нэртэй фолдер байдаг. / Etc / crontab гэж нэрлэгдсэн файл бас байдаг.

Анхдагч байдлаар та зүгээр л скриптүүдийг холбогдох хавтсанд байрлуулж болно.

Жишээ нь терминал цонхыг (CTRL, ALT ба T товчийг дарснаар) нээж дараах ls тушаалыг ажиллуулна :

ls / etc / cron *

Та цаг, өдөр, долоо хоног, сар бүр ажиллуулдаг хөтөлбөр, скриптүүдийн жагсаалтыг харах болно.

Эдгээр фолдеруудтай холбоотой асуудал бол тэдгээр нь бага зэрэг тодорхойгүй байна. Жишээ нь өдөр бүр энэ скрипт өдөрт нэг удаа ажиллуулах боловч скрипт нь тухайн өдрийн турш ажиллах тэр мөчлөгт хяналт байхгүй.

Энэ нь crontab файлд ордог газар юм.

Crontab файлыг засварлах замаар та скрипт эсвэл програмыг ажиллуулахыг хүссэн огноо, цагтаа ажиллуулж болно. Жишээ нь та 6 цагаас орой бүр файлуудаа нөөцөлж авахыг хүсч болох юм.

Зөвшөөрөл

Crontab тушаал нь хэрэглэгч crontab файлыг засварлах эрхтэй байхыг шаарддаг. Crontab зөвшөөрлийг удирдахад хэрэглэгддэг хоёр үндсэн файл байдаг:

Хэрэв /etc/cron.allow файл байгаа бол crontab файлыг засварлахыг хүссэн хэрэглэгч тэр файлд байх ёстой. Хэрэв cron.allow файл байхгүй байдаг боловч /etc/cron.deny файл байдаг бол хэрэглэгч тухайн файлд байх ёсгүй.

Хэрэв хоюулаа файлууд байгаа бол /etc/cron.allow нь /etc/cron.deny файлыг дарж давдаг.

Хэрэв файл алга байна гэж үзвэл энэ нь системийн тохиргооноос хэрэглэгч crontab-ийг засварлаж чадах эсэхээс хамаардаг.

Root хэрэглэгч нь crontab файлыг үргэлж засварлаж чаддаг. Та su тушаалыг root хэрэглэгчийн эсвэл sudo тушаалыг ашиглан crontab тушаалыг ажиллуулж болно.

Crontab файлыг засварлах

Зөвшөөрөлтэй хэрэглэгч бүр өөрсдийн crontab файлыг үүсгэж болно. Cron тушаал нь олон crontab файлууд байдаг бөгөөд тэдгээрийг бүгдийг ажиллуулдаг.

Та crontab файл байгаа эсэхийг шалгахын тулд дараах тушаалыг ажиллуулна:

crontab -l

Хэрэв танд crontab файл байхгүй бол "crontab" гэсэн нэртэй файл байхгүй тохиолдолд таны crontab файлыг харуулах болно (энэ функц нь системээс системээс ялгаатай, заримдаа яг юуг ч харуулахгүй, харин бусад тохиолдолд энэ нь харуулах болно, " Энэ файлыг засварлах хэрэггүй "").

Кредаб файлыг үүсгэх эсвэл засварлахдаа дараах тушаалыг ажиллуулна:

crontab -e

Анхдагч засварлагч сонгогдоогүй бол анхдагчаар та анхдагч засварлагчийг сонгохыг асуух болно. Хувь хүний ​​хувьд би нано ашигладаг. Энэ нь нэлээн шулуун бөгөөд хэрэглэхэд тохиромжтой, терминалаас ажилладаг.

Нээх файл нь ихээхэн мэдээлэлтэй боловч үндсэн хэсэг нь тайлбар хэсгийн төгсгөлийн өмнөх жишээ юм (тайлбар нь # -аар эхэлсэн мөрүүдээр тайлбарлагдсан).

# mh dom mon dow тушаал

0 5 * * 1 tar -zcf /var/backups/home.tgz / home /

Crontab файл мөр тус бүр дээр 6 ширхэг мэдээлэл байдаг:

Зүйл бүрийн хувьд (тушаалаас бусад) та орлуулах тэмдэгтийг зааж өгч болно. Дараах жишээ crontab мөрийг хараарай:

30 18 * * * tar -zcf /var/backups/home.tgz / home /

Дээрх тушаал юу болох 30 минут, 18 цаг, ямар ч өдөр, сар, өдөр долоо хоногт бичиж, гэрийн санг / var / backups хавтсанд tar болгон ажиллуулах тушаалыг ажиллуулдаг.

30 минутын турш ажиллуулах тушаал авахын тулд би дараах тушаалыг ажиллуулж болно:

30 * * * * тушаал

Өглөөний 6 цагт минут бүр ажиллуулах тушаал авахын тулд би дараах тушаалыг ажиллуулж болно:

* 18 * * * тушаал

Тиймээс та өөрийн crontab тушаалуудыг тохируулах талаар болгоомжтой байх хэрэгтэй.

Жишээ нь:

* * * 1 * тушаал

Дээрх комманд нь 1-р сард долоо хоног бүр ажилладаг бүх цаг тутмын минут бүрийг ажиллуулдаг. Энэ бол таны хүсч буй зүйл.

1-р сарын 1-ний 5 цагт тушаалыг ажиллуулахын тулд та дараах тушаалыг crontab файлдаа ажиллуулах болно:

0 5 1 1 * тушаал

Crontab файлыг хэрхэн устгах

Ихэнх тохиолдолд та crontab файлыг устгахыг хүсэхгүй байгаа боловч crontab файлаас зарим мөрүүдийг устгахыг хүсэж болох юм.

Гэхдээ та хэрэглэгчийн crontab файлыг устгахыг хүсвэл дараах тушаалыг ажиллуулна:

crontab -r

Үүнийг хийх аюулгүй аргаар дараах тушаалыг ажиллуулах явдал юм:

crontab -i

Энэ нь "та итгэлтэй байна уу?" Гэсэн асуултад хариулах болно. crontab файлыг устгахаасаа өмнө