Unsaon Pag-usab Ang File sa Linux Crontab Sa Pag-eskedyul sa Mga Trabaho

Pasiuna

Adunay usa ka daemon sa Linux nga gitawag og cron nga gigamit sa pagdagan sa mga proseso sa regular nga mga lat-ang.

Ang paagi sa paghimo niini mao ang pagsusi sa pila ka mga folder sa imong sistema alang sa mga script nga modagan. Pananglitan adunay usa ka folder nga gitawag ug /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly ug /etc/cron.monthly. Adunay usab usa ka file nga gitawag ug / etc / crontab.

Sa kasagaran mahimo nimong ibutang ang mga script sa mga may kalabutan nga mga folder aron mapadagan sila sa regular nga mga lat-ang.

Pananglitan magbukas sa usa ka terminal window (pinaagi sa pagputol sa CTRL, ALT ug T) ug ipatuman ang mosunod nga ls command :

ls / etc / cron *

Imong makita ang listahan sa mga programa o mga script nga gidumala matag oras, adlaw-adlaw, matag semana ug binulan.

Ang kasamok niini nga mga folder mao nga kini usa ka gamay nga dili klaro. Pananglitan kada adlaw nagpasabut nga ang script magadagan usa ka adlaw sa usa ka adlaw apan wala ka makontrolar sa panahon nga ang script magadagan nianang adlawa.

Kana diin ang crontab file moabut.

Pinaagi sa pag-edit sa crontab file mahimo ka nga makakuha og usa ka script o programa nga modagan sa eksaktong petsa ug oras nga gusto nimo nga kini modagan. Pananglitan tingali gusto nimo i-backup ang imong mga file kada gabii sa alas-6 sa gabii.

Mga permiso

Ang sugo sa crontab nagkinahanglan nga ang usa ka user adunay permiso sa pag-edit sa usa ka crontab file. Adunay duha ka mga basahon nga gigamit sa pagdumala sa mga permiso sa crontab:

Kung ang file /etc/cron.allow naglungtad dayon ang user nga gusto mag-edit sa crontab file kinahanglan nga anaa sa maong file. Kung ang cron.allow file wala maglungtad apan adunay usa ka /etc/cron.deny file unya ang user dili kinahanglan nga anaa sa maong file.

Kung ang duha ka mga file anaa dayon ang /etc/cron.allow molampos sa /etc/cron.deny file.

Kung walay file nga naglungtad kini nag-agad sa pagsumpo sa sistema kung ang usa ka user mahimong maka-edit sa crontab.

Ang gamut nga tiggamit mahimong kanunay mag-edit sa crontab file. Mahimo nimong gamiton ang command sa su sa pagbalhin sa root user o sa sudo nga command aron sa pagpadagan sa crontab command.

Pag-edit sa File sa Crontab

Ang matag tiggamit nga may permiso makahimo sa ilang kaugalingon nga crontab file. Ang command cron sa panguna nagtan-aw alang sa paglungtad sa daghang mga file sa crontab ug nagaagi sa tanan niini.

Aron masusi kon duna kay crontab file nga modagan sa mosunod nga sugo:

crontab -l

Kon wala kay crontab nga mag-file sa mensahe nga "no crontab for " makita kung dili ang imong crontab file ipasundayag (kini nga functionalidad lahi gikan sa sistema ngadto sa sistema, usahay kini walay gipakita nga bisan unsa ug sa laing mga panahon kini gipakita, " ayaw usba kining file ").

Sa paghimo o pag-edit sa usa ka crontab file nga modagan sa mosunod nga sugo:

crontab -e

Pinaagi sa default kung walay default editor nga napili unya hangyoon ka sa pagpili sa default editor nga gamiton. Sa personal gusto nakong gamiton ang nano tungod kay kini medyo tul-id nga gamiton ug kini nagdagan gikan sa terminal.

Ang file nga nagbukas adunay daghan nga kasayuran apan ang mahinungdanon nga bahin mao ang panig-ingnan sa wala pa ang katapusan sa mga seksyon sa mga komentaryo (ang mga komento gipaila sa mga linya nga nagsugod sa #).

# mh dom mon dow nga sugo

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

Adunay 6 ka piraso nga kasayuran aron mahaum sa matag linya sa crontab file:

Alang sa matag butang (gawas sa sugo) mahimo nimong itakda ang wildcard nga karakter. Tan-awa ang mosunod nga linya sa crontab:

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

Ang gisulti sa sugo sa ibabaw mao ang 30 minutos, 18 ka oras ug bisan unsang adlaw, bulan ug adlaw sa semana ang usa ka sugo sa pag- zip ug pag- tar sa direktoryo sa panimalay ngadto sa folder sa / var / backup.

Aron makuha ang usa ka mando nga modagan sa 30 minutos nga milabay kada oras nga mahimo nako ang mosunod nga sugo:

30 * * * * sugo

Aron makadawat sa usa ka sugo sa pagdagan kada minuto sa miaging alas 6 sa hapon akong mahimo ang mosunod nga sugo:

* 18 * * * sugo

Busa kinahanglang mag-amping ka bahin sa paghimo sa imong mga sugo sa crontab.

Pananglitan:

* * * 1 * sugo

Ang labaw sa sugo nga modagan matag minuto kada oras sa matag adlaw sa matag semana sa Enero. Nagduhaduha ako nga kana ang imong gusto.

Aron makadumala sa usa ka komand sa alas 5 sa buntag sa ika-1 nga Enero moadto sa mosunod nga sugo sa crontab file:

0 5 1 1 * sugo

Unsaon Pagtangtang sa Usa ka Crontab File

Kadaghanan sa panahon nga dili nimo gusto nga makuha ang crontab file apan mahimo nimo nga kuhaon ang pipila ka mga linya gikan sa crontab file.

Apan kung gusto nimong kuhaon ang file sa crontab sa imong user ang mosunod nga sugo:

crontab -r

Ang usa ka luwas nga paagi sa pagbuhat niini mao ang pagpadagan sa mosunod nga sugo:

crontab -i

Kini nangutana sa pangutana "sigurado ka ba?" sa dili pa makuha ang crontab file.