লিনাক্সের ক্রসট্যাব ফাইল সম্পাদনা করতে কিভাবে চাকরির সময় নির্ধারণ করা যায়

ভূমিকা

লিনাক্সে একটি ডেমন আছে যা ক্রোন ব্যবহার করে যা নিয়মিত ব্যবধানে প্রসেস চালানোর জন্য ব্যবহৃত হয়।

এটি করার উপায়টি স্ক্রিপ্ট চালানোর জন্য আপনার সিস্টেমের নির্দিষ্ট ফোল্ডারগুলি চেক করতে হয়। উদাহরণস্বরূপ /etc/cron.hourly নামক একটি ফোল্ডার আছে, /etc/cron ডেইলি, /etc/cron.weekly এবং /etc/cron.monthly / Etc / crontab নামক একটি ফাইলও আছে।

ডিফল্টভাবে আপনি সহজলভ্য ফোল্ডারগুলিতে স্ক্রিপ্টগুলি স্থাপন করতে পারেন যাতে নিয়মিত ব্যবধান চালাতে পারেন।

উদাহরণস্বরূপ একটি টার্মিনাল উইন্ডো খুলুন (CTRL, ALT এবং T টিপে) এবং নিম্নলিখিত ls কমান্ডটি চালান:

ls / etc / cron *

আপনি দৈনিক, সাপ্তাহিক, সাপ্তাহিক এবং মাসিক চালানো প্রোগ্রাম বা স্ক্রিপ্টগুলির তালিকা দেখতে পাবেন।

এই ফোল্ডারগুলির সাথে সমস্যা হল যে তারা একটি বিট অস্পষ্ট। উদাহরণস্বরূপ দৈনিক অর্থ হচ্ছে স্ক্রিপ্টটি দিনে একবার চালানো হবে কিন্তু স্ক্রিপ্টের সময় কোনও সময় আপনার নিয়ন্ত্রণ থাকবে না।

যে যেখানে ক্র্যাশব্যাক ফাইল আসে।

Crontab ফাইল সম্পাদনা দ্বারা আপনি এটি চালানোর জন্য আপনি চান সঠিক তারিখ এবং সময় চালানোর একটি স্ক্রিপ্ট বা প্রোগ্রাম পেতে পারেন। উদাহরণস্বরূপ, আপনি 6 রাতে প্রতি রাতে আপনার ফাইল ব্যাকআপ করতে চান।

অনুমতিসমূহ

Crontab কমান্ডের জন্য প্রয়োজন যে কোনো ব্যবহারকারী একটি ক্রসট্যাব ফাইল সম্পাদনা করার অনুমতি দিয়েছেন। মূলত দুইটি ফাইল রয়েছে যা ক্র্যাঁচব অনুমতিগুলি পরিচালনা করতে ব্যবহৃত হয়:

যদি ফাইলটি /etc/cron.allow বিদ্যমান থাকে তাহলে ক্র্যাশব্যাব ফাইলটি সম্পাদনা করতে চাইলে ব্যবহারকারী সেই ফাইলটিতে থাকা আবশ্যক। যদি cron.allow ফাইলটি বিদ্যমান না থাকে তবে একটি /etc/cron.deny ফাইল থাকে তাহলে ব্যবহারকারীটি সেই ফাইলটিতে বিদ্যমান না থাকা আবশ্যক।

যদি উভয় ফাইল উপস্থিত থাকে তবে /etc/cron.allow /etc/cron.deny ফাইলটি অগ্রাহ্য করে।

যদি কোনও ফাইল বিদ্যমান থাকে তবে এটি ব্যবহারকারী কনস্ট্রাক্ট সম্পাদনা করতে পারে কিনা তা সিস্টেম কনফিগারেশনের উপর নির্ভর করে।

রুট ব্যবহারকারী সর্বদা ক্র্যাঁট্যাব ফাইল সম্পাদনা করতে পারেন। Crontab কমান্ড চালানোর জন্য আপনি রুট ব্যবহারকারী বা sudo কমান্ডটি পরিবর্তন করতে su কমান্ড ব্যবহার করতে পারেন।

ক্রান্তব ফাইল সম্পাদনা

অনুমতিপ্রাপ্ত প্রত্যেক ব্যবহারকারী তাদের নিজস্ব ক্র্যাশব্যাব ফাইল তৈরি করতে পারে। Cron কমান্ডটি মূলত একাধিক ক্র্যাঁট্যাব ফাইলগুলির অস্তিত্ব উপলব্ধি করে এবং তাদের সকলের মাধ্যমে চালায়।

আপনার একটি crontab ফাইল আছে কিনা তা পরীক্ষা করতে নিম্নোক্ত কমান্ডটি চালান:

crontab -l

আপনার যদি কোন ক্রসট্যাব ফাইল না থাকে তবে "আপনার নাম" এর জন্য কোন ক্রসট্যাব প্রদর্শিত হবে না। অন্যথায় আপনার ক্র্যাশব্যাব ফাইলটি প্রদর্শিত হবে (এই কার্যকারিতাটি সিস্টেম থেকে সিস্টেমের মধ্যে পার্থক্য রয়েছে, মাঝে মাঝে এটি কিছুই দেখায় না এবং অন্য সময় এটি প্রদর্শিত হয়, " এই ফাইলটি সম্পাদনা করবেন না ")।

একটি crontab ফাইল তৈরি বা সম্পাদনা করতে নিম্নলিখিত কমান্ডটি চালান:

crontab -e

ডিফল্টরূপে যদি কোন ডিফল্ট সম্পাদক নির্বাচিত না থাকে তবে আপনাকে ব্যবহার করার জন্য একটি ডিফল্ট সম্পাদক নির্বাচন করতে বলা হবে। ব্যক্তিগতভাবে আমি ন্যানো ব্যবহার করতে চাই, এটি ব্যবহার করার জন্য যথেষ্ট সোজা এবং এটি টার্মিনাল থেকে চালায়।

খোলা ফাইলটি অনেক তথ্য রাখে কিন্তু মন্তব্য অংশটি শেষ হওয়ার পূর্বেই মূল অংশটি উদাহরণ। # মন্তব্যগুলি (লাইনগুলি দ্বারা মন্তব্যগুলি চিহ্নিত করা হয়)

# এমএইচ ডোম মোড ডো কমান্ড

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

Crontab ফাইলের প্রতিটি লাইনের জন্য উপযুক্ত 6 টুকরা তথ্য রয়েছে:

প্রতিটি আইটেমের জন্য (কমান্ড ব্যতীত) আপনি একটি ওয়াইল্ডকার্ড অক্ষর নির্দিষ্ট করতে পারেন নিম্নোক্ত উদাহরণটি ক্রসট্যাব লাইনটি দেখুন:

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

উপরের কমান্ডটি কি বলে তা 30 মিনিটের, 18 ঘণ্টা এবং সপ্তাহের কোনও দিন, মাস এবং দিনে হোম ডিরেক্টরীকে / var / backups ফোল্ডারে জিপ এবং টার্মের কমান্ডটি চালায়।

প্রতি ঘন্টায় 30 মিনিটে চালানোর জন্য একটি কমান্ড পেতে আমি নিম্নোক্ত কমান্ডটি চালাতে পারি:

30 * * * * কমান্ড

গত 6 ঘণ্টার প্রতি মিনিটে চালানোর জন্য একটি কমান্ড পেতে আমি নিম্নলিখিত কমান্ডটি চালাতে পারি:

* 18 * * * কমান্ড

আপনার ক্রসবার্জ কমান্ডগুলি সেট করার জন্য আপনাকে সতর্কতা অবলম্বন করতে হবে।

এই ক্ষেত্রে:

* * * 1 * কমান্ড

উপরের কমান্ডটি প্রতি সপ্তাহে প্রতি সপ্তাহে প্রতি মিনিটে জানুয়ারিতে চলবে। আমি সন্দেহ কি আপনি চান।

1 জানুয়ারির 5 টায় একটি কমান্ড চালানোর জন্য আপনি ক্রসট্যাব ফাইলের নিম্নোক্ত কমান্ড এ রাখুন:

0 5 1 1 * কমান্ড

একটি Crontab ফাইল সরান কিভাবে

বেশিরভাগ সময় আপনি ক্রসট্যাব ফাইলটি সরাতে চান না তবে আপনি ক্রসট্যাব ফাইল থেকে কিছু সারি সরাতে চান।

যাইহোক যদি আপনি আপনার ব্যবহারকারীর crontab ফাইল মুছে ফেলতে চান নিম্নলিখিত কমান্ড চালানো:

crontab -r

এই কমান্ডটি চালানোর জন্য একটি নিরাপদ উপায় হল:

crontab -i

এই প্রশ্নের "আপনি কি নিশ্চিত?" crontab ফাইল মুছে ফেলার আগে