அறிமுகம்
வழக்கமான இடைவெளிகளில் செயல்முறைகள் இயக்க பயன்படும் கிரான் என்ற லினக்ஸில் ஒரு டீமான் உள்ளது.
இது இயங்குவதற்கான ஸ்கிரிப்ட்டுக்காக உங்கள் கணினியில் சில கோப்புறைகளை சரிபார்க்கிறது. உதாரணமாக /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
- /etc/cron.deny
கோப்பு /etc/cron.allow கோப்பு இருந்தால், cronab கோப்பை திருத்த விரும்பும் பயனர் கோப்பில் இருக்க வேண்டும். Cron.allow கோப்பு இல்லை என்றால், ஆனால் ஒரு /etc/cron.deny கோப்பு உள்ளது, பின்னர் பயனர் அந்த கோப்பில் இல்லை.
இரு கோப்புகள் இருந்தால், /etc/cron.allow /etc/cron.deny கோப்பினை மேலெழுகிறது.
எந்த கோப்பு இல்லையென்றால், அது ஒரு பயனர் crontab ஐ திருத்த முடியுமா என்பதை கணினி அமைப்பில் சார்ந்துள்ளது.
ரூட் பயனர் எப்போதும் crontab கோப்பை திருத்த முடியும். Curtab கட்டளையை இயக்க ரூட் பயனருக்கு அல்லது sudo கட்டளையை மாற்ற நீங்கள் su கட்டளையை பயன்படுத்தலாம்.
Crontab கோப்பு திருத்துதல்
அனுமதிகள் ஒவ்வொரு பயனரும் தங்கள் சொந்த crontab கோப்பை உருவாக்க முடியும். Cron கட்டளையை அடிப்படையில் பல crontab கோப்புகளின் இருப்பிடம் மற்றும் அவற்றின் வழியாக இயங்கும்.
நீங்கள் ஒரு crontab கோப்பை பின்வரும் கட்டளையை இயக்க வேண்டுமா என்பதைச் சரிபார்க்கவும்:
crontab -l
நீங்கள் ஒரு crontab கோப்பினைக் கொண்டிருக்கவில்லை என்றால் "உங்கள் பெயர்> எந்தவொரு crontab யும் இல்லையெனில் உங்கள் crontab கோப்பு காட்டப்படும் (இந்த செயல்பாடு கணினியிலிருந்து மாறுபடும், சிலநேரங்களில் அது வேறு எந்த நேரத்திலும் காட்டப்படாது," இந்த கோப்பை திருத்த வேண்டாம் ").
ஒரு crontab கோப்பை உருவாக்க அல்லது திருத்துவதற்கு பின்வரும் கட்டளையை இயக்கவும்:
crontab -e
இயல்புநிலையாக, முன்னிருப்பாகத் தேர்ந்தெடுக்கப்பட்ட இயல்புநிலை திருத்தி இருந்தால், நீங்கள் பயன்படுத்த இயல்புநிலை திருத்தியைத் தேர்ந்தெடுக்க வேண்டும். தனிப்பட்ட முறையில் நான் நானோ பயன்படுத்த விரும்புகிறேன் அது மிகவும் நேராக முன்னோக்கி பயன்படுத்த மற்றும் அது முனையத்தில் இருந்து இயங்கும்.
திறக்கும் கோப்பகம் நிறைய தகவல் உள்ளது, ஆனால் முக்கிய பகுதி கருத்துகளின் பிரிவின் முடிவிற்கு முன் தான் உள்ளது (கருத்துக்கள் # தொடங்கி வரிகளுடன் குறிக்கப்படுகிறது).
# mh dom mon dow கட்டளை
0 5 * * 1 tar -zcf /var/backups/home.tgz / home /
Crontab கோப்பின் ஒவ்வொரு வரியும் பொருந்தக்கூடிய தகவல்களின் 6 துண்டுகள் உள்ளன:
- நாள் குறிக்கோள் இயக்கத்தின் (நிமிடம்)
- நாளின் மணிநேரம் (h)
- மாதத்தின் கட்டளையை கட்டளையிடுவது (டாப்)
- மாதத்தின் கட்டளை (மாத)
- வாரம் நாள் கட்டளை (டவுன்)
- கட்டளை
ஒவ்வொரு உருப்படியிலும் (கட்டளையைத் தவிர) நீங்கள் ஒரு வைல்டு கார்டைக் குறிப்பிடலாம். பின்வரும் உதாரணத்தைக் காண்க crontab line:
30 18 * * * tar -zcf /var/backups/home.tgz / home /
மேலே உள்ள கட்டளை என்னவென்றால், 30 நிமிடங்கள், 18 மணிநேரம் மற்றும் எந்த நாளிலும், மாதம் மற்றும் வாரத்தின் வாரம் / var / backups folder க்கு வீட்டு அடைவை zip செய்து தட்டச்சு செய்யவும்.
ஒவ்வொரு ஆண்டும் கடந்த 30 நிமிடங்களில் இயக்க கட்டளையைப் பெற பின்வரும் கட்டளையை இயக்கலாம்:
30 * * * கட்டளை
6 மணிநேரத்திற்கு முன் ஒவ்வொரு நிமிடமும் இயக்க கட்டளையைப் பெற பின்வரும் கட்டளையை இயக்கலாம்:
* 18 * * * கட்டளை
எனவே உங்கள் crontab கட்டளைகளை அமைக்க பற்றி கவனமாக இருக்க வேண்டும்.
உதாரணமாக:
* * * 1 * கட்டளை
ஜனவரி மாதத்தில் ஒவ்வொரு வாரம் ஒவ்வொரு மணி நேரத்திற்கும் ஒவ்வொரு நிமிடத்திற்கும் மேலே உள்ள கட்டளை இயக்கப்படும். நான் உனக்கு என்ன வேண்டும் என்று சந்தேகிக்கிறேன்.
1 ஜனவரி மாதம் 5 ஆம் தேதி கட்டளையை இயக்க Cronab கோப்பில் நீங்கள் கீழ்க்கண்ட கட்டளையைப் பெறுவீர்கள்:
0 5 1 1 * கட்டளை
ஒரு Crontab கோப்பு அகற்று எப்படி
பெரும்பாலான நேரம் நீங்கள் crontab கோப்பை நீக்க விரும்பவில்லை ஆனால் நீங்கள் crontab கோப்பில் இருந்து சில வரிசைகளை நீக்க வேண்டும்.
இருப்பினும் உங்கள் பயனர் crontab கோப்பை நீக்குவதற்கு பின்வரும் கட்டளையை இயக்க வேண்டும்:
crontab -r
இதை செய்ய பாதுகாப்பான வழி பின்வரும் கட்டளையை இயக்க வேண்டும்:
crontab -i
இது கேள்வி கேட்கிறது "நீங்கள் உறுதியாக இருக்கிறீர்களா?" crontab கோப்பை நீக்கும் முன்.