ম্যানুয়ালি ক্রোন ফাইল সম্পাদনা করা কি খারাপ?


12

কমান্ড লাইনের মাধ্যমে সাধারণত নতুন ক্রোন জব চালু করার নির্দেশ দেওয়া হয়; তবে আমি ব্যবহারকারী ক্রোন ফাইলটিকে ম্যানুয়ালি সম্পাদনা করতে (বর্তমান ক্রোন কার্যগুলির আরও ভাল নিয়ন্ত্রণের সাথে) খুব সহজ পেয়েছি (টেক্সট সম্পাদকে) /var/spool/cron/crontabs/root

পাঠ্য সম্পাদকটিতে ফাইল সম্পাদনা করা কি বিপজ্জনক?

ডিফল্ট ফাইলে মন্তব্যগুলি বিভ্রান্তিকর। প্রথম লাইন বলে

# DO NOT EDIT THIS FILE - edit the master and reinstall.

তবে চতুর্থ লাইন বলে

# Edit this file to introduce tasks to be run by cron.

2
কেন কেবল জিনিসগুলিকে /etc/cron.d এর আওতায় রাখবেন না?
জোরডাচে

এটি একটি ভাল ধারণা হতে পারে; তবে কোন ফাইলটি সম্পাদনা করতে হবে তা আমি বোঝাতে চাইনি, আমি সম্পাদকের দ্বারা সম্পাদনা ফাইলের সাথে তুলনা করছি বা ক্রন্টব কমান্ড চালাচ্ছি।
গুগলবট

@ সমস্ত কিছুই আমি অনুমান করি ক্রন্টব-ই দ্বারা তৈরি সিনট্যাক্স চেকের মধ্যে কেবলমাত্র পার্থক্য রয়েছে। এটি সিনট্যাক্স চেকিং সহ কেবল একটি পাঠ্য বাফার। আপনি নিজের সাধারণ সম্পাদকও পরিবর্তন করতে পারেন এবং ক্রন্টব-ই এতে লোড হবে। সিনট্যাক্সের উপর গুরুত্ব, কারণ যদি আপনি কোনও ভুল করেন তবে সমস্ত ফাইল উপেক্ষা করা হবে। এমনকি আপনি যদি কোনও বাহ্যিক সরঞ্জাম ব্যবহার করেন তবে ফাইলটি পড়ার জন্য আপনার ক্রন্টব-ই ব্যবহার করা উচিত এবং সমাপ্তির পরে এটি ক্রন্টব-ই-তে প্রেরণ করা উচিত। এমনটি করে আপনাকে আর সিনট্যাক্স নিয়ে আর চিন্তা করতে হবে না। ব্যবহারকারী এবং সিস্টেমের কার্যগুলি থেকে ফাইলগুলি বিভক্ত করা আরও ভাল, সুতরাং আপনার ব্যবহারকারীর / পরীক্ষার কার্যগুলির জন্য আরও ভাল /etc/cron.d ব্যবহার করা উচিত।
m3nda

উত্তর:


22

আপনি যদি ক্রোনটাবগুলির অধীনে ব্যবহারকারী ফাইলটি পরিবর্তন করেন তবে এটি কাজ করা উচিত। তবে, দুটি বিষয় বিবেচনার জন্য রয়েছে:

  1. আপনি যদি ফাইলটিতে ক্রোন এন্ট্রিটি ভুল টাইপ করেন, crontab -eকমান্ড ব্যবহারের বিরোধিতা হিসাবে আপনাকে সতর্ক করা হবে না ।
  2. আপনি রুট হিসাবে লগইন বা sudo ব্যবহার না করে ক্রন্টব্যাবের অধীনে আপনার ব্যবহারকারী ফাইলটি সম্পাদনা করতে পারবেন না। আপনি অনুমতি ত্রুটি অস্বীকার পাবেন।

সম্পাদন করা

যোগ করার জন্য আরও একটি পয়েন্ট। আপনি যখন ফাইলটি সরাসরি সম্পাদনা করেন, আপনি দুবার ফাইলটি (একই ফাইলটিতে অ্যাক্সেস করা দুজন ব্যবহারকারী) ফাইলটি খুললে আপনাকে পাঠ্য সম্পাদক দ্বারা সতর্ক করা হতে পারে। তবে crontab -eএকই ব্যবহারকারীর দুটি পৃথক শেল সেশন থেকে ব্যবহার করার সময় ক্রোন তালিকাটি ওভাররাইট করা হবে । এটি অন্য একটি পার্থক্য।


খুব সূক্ষ্ম পয়েন্ট! আমি কখনই দ্বিতীয় সমস্যার মুখোমুখি হইনি (জানতাম), কারণ আমি সর্বদা মূল হিসাবে কাজ করি।
গুগলবট

4
এছাড়াও, ডিফল্ট ফাইলে "সম্পাদনা করবেন না" কারণ একটি আপগ্রেড / পুনরায় ইনস্টল করা ফাইলটি ওভাররাইট করতে পারে।
ক্রিস এস

আপনি উল্লেখ করতে ব্যর্থ হন যে কোনও ব্যবহারকারী যিনি ক্রন্টব সম্পাদনা করেন তিনি যে স্যান্ট্যাক্স চেক সরবরাহ করেন তা সরাসরি হারিয়ে ফেলে crontab -e
আদম এফ

1
@ অ্যাডামএফ: এই বিষয়টি 1 এর কথা বলছে!
খালেদ

8

যদি আমি সঠিকভাবে বুঝতে পারি তবে আপনি কোনও পাঠ্য সম্পাদক থেকে ফাইলটি ম্যানুয়ালি সম্পাদনা করছেন কারণ আপনি ক্রন্টব-ই ব্যবহার করতে চান না। আমি অনুমান করব কারণ এটি সম্পাদক হিসাবে vi ব্যবহার করছে এবং আপনি এটির সাথে অপরিচিত।

চালনার মাধ্যমে আরও পরিচিত ন্যানো সম্পাদকটি ব্যবহার করার জন্য আপনি ক্রোনটব - (এবং অন্যান্য জিনিসগুলির জন্য যা সম্পাদক দরকার) পরিবর্তন করেন

export EDITOR=nano

আগে

crontab -e

আপনি ন্যানোটিকে export EDITOR=nanoশেষে অন্তর্ভুক্ত করতে আপনার ~ / .bash_profile ফাইলটি সম্পাদনা করে পারমামেন্ট ডিফল্ট সম্পাদক করতে পারেন ।

আপনার প্রশ্নের জবাব দেওয়ার জন্য আপনার সরাসরি ফাইলটি সম্পাদনা করা উচিত নয় কারণ এটি না জেনে এটি ওভাররাইট করা হতে পারে। ৪ র্থ লাইনটি যা বলে তা বলে কারণ এটি ক্রোনটব থেকে আসে যা আপনাকে ম্যানুয়ালি সম্পাদনা করার কথা বলেছিল (এটি প্রথম লাইন হিসাবে এটি বলবে)।


বর্ণনামূলক উত্তরের জন্য ধন্যবাদ। আমি ক্রন্টব কমান্ড ভিআই সম্পাদক এর সাথে সম্পূর্ণ পরিচিত; তবে আমি জিডিট ব্যবহার করি (এসএসএস টার্মিনালে নয়), কারণ আমি সরাসরি আমার লিনাক্স ডেস্কটপ থেকে সার্ভারের সাথে সংযোগ করি।
গুগলবট

প্রতিবার আপনি এসএসএস-এ লগইন করলে এটি লিখিত হওয়া এড়াতে আপনার বাশার্ক ফাইলটিতে রফতানি এডিটোর কমান্ড যুক্ত করার পরামর্শও দিই।
m3nda

1
export VISUAL=vi

এটি ক্রোনটবের জন্য সম্পাদক পরিবর্তন করার সঠিক উপায়।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.