ক্রোন ট্যাব ফাইল মোছা হয়েছে এবং এটি পুনরুদ্ধার করা দরকার


11

আমি ক্রন্টব-আর এর পরিবর্তে ক্রন্টব -আর চালিয়ে আমার ক্রন্টব ফাইলটি মুছলাম। মুছে ফেলা ফাইলটি পুনরুদ্ধার করতে আমার একটি ব্যাকআপ এবং নতুন ছিল না।

এটা কি সম্ভব?

ধন্যবাদ,

পিটার


7
সম্পাদনা এবং অপসারণের বিকল্পগুলি কীবোর্ডের একে অপরের ঠিক পাশে হওয়া উচিত নয়। দ্রুত টাইপের জন্য খুব সহজেই ভুল করা।
আইনস্টিয়ান

আমার ক্ষেত্রে ঠিক এটাই হয়েছিল

উত্তর:


9

কী চলছে তা দেখতে / var / লগ / ক্রোনটি দেখার চেষ্টা করুন এবং তারপরে ক্রন্টবকে পুনরায় তৈরি করার চেষ্টা করুন। এটি অগোছালো তবে আপনার আগে চালানো সমস্ত কিছু পুনরুদ্ধার করতে সক্ষম হওয়া উচিত। যদিও নতুন আইটেমগুলির জন্য এত ভাগ্য নয়। শুভকামনা!


দুর্দান্ত পন্থা!
অ্যালেক্স

5

সবার আগে: সর্বদা ব্যাকআপ নিন!

কিন্তু, এটা বজায় মিশে এত সহজ crontab -rএবং crontab -e। আমি নিজেই এটি করেছি।

এটাই আমি করেছি:

আপনি / var / লগ / ক্রোনটি দেখার চেষ্টা করতে পারেন এবং আবার আপনার ক্রন্টবকে তৈরি করতে পারেন।

  1. লগফাইলে একবার দেখুন
  2. প্রথম কমান্ড নিন এবং করুন grep commandname1 /var/log/cron
  3. কমান্ডটি চালিত হওয়ার পিছনে পদ্ধতিগত চিত্রটি নির্ধারণ করুন
  4. আপনার নতুন ক্রন্টব এ প্রবেশটি রাখুন
  5. চালানো cat /var/log/cron | grep -v commandname1। এটি আপনার ইতিমধ্যে আচ্ছাদিত কমান্ড 1 বাদ দেবে।
  6. পরবর্তী কমান্ডটি নিন এবং এর জন্য গ্রেপ করুন
  7. দ্বিতীয় কমান্ডটি চালিত হওয়ার পিছনে নিয়মতান্ত্রিক চিত্রটি বের করুন
  8. আপনার নতুন ক্রন্টব এ প্রবেশ করুন
  9. এক্সিকিউট cat /var/log/cron | grep -v commandname1 | grep -v commandname2
  10. আপনি সমস্ত আদেশ কভার না করা পর্যন্ত পুনরাবৃত্তি করুন

এখন আপনার মাসে পুরানো ক্রোনলোগগুলিতে গ্রেপ চালানো উচিত যা মাসে একবারে চালানো যেতে পারে jobs


1
উবুন্টুতে কমপক্ষে (অ্যানাক্রন / ভিক্সি ক্রোন ব্যবহার করে অন্য প্ল্যাটফর্ম সম্পর্কে নিশ্চিত নয়) লগটি সঞ্চিত রয়েছে /var/log/syslog/*
টিমোথি গু

1
আপনি দুর্ঘটনাক্রমে কিছু মুছার আগে, সর্বদা একটি ব্যাকআপ তৈরি করুন!
ডেভিড হরভথ

4

পূর্ণ ক্রন্টব পুনরুদ্ধারের জন্য স্ক্রিপ্ট

আমি একটি পিএইচপি স্ক্রিপ্ট তৈরি করেছি যা লগ-এর উপর ভিত্তি করে আপনার ক্রোনটাবকে পুরো পুনরুদ্ধার করে।

এটি গত সপ্তাহে ব্যবহারকারী দ্বারা চালিত প্রতিটি ক্রোন কমান্ডের একক উদাহরণ দেয়।

আমি এটি এখানে রাখি

https://github.com/dangreenisrael/recover_crontab

এখানে একটি নমুনা আউটপুট:

perl ~/sorttv/sorttv.pl

/usr/local/bin/flexget

bash ~/scripts/sort_sports.sh

~/scripts/play_recently_added.sh

1
কেন এই দেওয়া হয়েছিল -1? এটি প্রশ্নের সরাসরি উত্তর।
ড্যান গ্রিন-লেপসিগার

আমি আপনার স্ক্রিপ্ট ব্যবহার করা হয়েছে। আশ্চর্যজনক, আপনাকে অনেক ধন্যবাদ!
এমভি

ক্লোজিং বন্ধনী রয়েছে এমন কমান্ডগুলির জন্য পিএইচপি স্ক্রিপ্টটি সঠিকভাবে সাথে নেই। স্থির এবং zgrep -F "($USER) CMD (" /var/log/syslog* | cut -d\( -f3- | sort -u | while read cmd ; do echo ${cmd::-1} ; done
বাশকে

1

আপনার কাছে বিকল্পগুলি রয়েছে তবে কোনওটিই বিশেষ সুন্দর নয়। আপনি যদি এটির কথা না ভেবে থাকেন, যদি আপনি কোনও উন্নয়ন মেশিনে সাম্প্রতিক সংস্করণ পেয়ে থাকেন তবে আপনি সেখান থেকে এটি অনুলিপি করতে পারেন ... আমি কেবল তাই বলি কারণ আমি প্রায়শই অন্যান্য মেশিনে থাকা অনুলিপিগুলি ভুলে যাই, তাই আমি ধরে নিয়েছি যে আপনি ইতিমধ্যে এটি চেষ্টা করেছেন।

যদি আপনার ফাইলটি খুব সহজেই এটি পুনর্নির্মাণকে ব্যবহারিক করে তুলতে ভারীভাবে কাস্টমাইজ করা থাকে তবে আপনি সর্বদা কিছু নিম্ন-স্তরের ফরেনসিক চেষ্টা করতে পারেন। সুতুথকিট এবং ইউএফএস এক্সপ্লোরারকে কেন্দ্র করে টিউটোরিয়ালগুলির জন্য গুগলিং চেষ্টা করুন । এই সরঞ্জামগুলি ব্যবহার করা লোকেরা ব্যবহারের সহজলভ্যতা এবং সাফল্যের হারের ক্ষেত্রে ব্যাপকভাবে বিভিন্ন ডিগ্রী খুঁজে পায়, তাই যথারীতি ওয়াইএমএমভি।


1

বিতৃষ্ণা মূল প্রশ্নে একটি মন্তব্য পোস্ট করতে পারেন না, কিন্তু একটি সহকর্মীর শুধু আমাকে একটি দুর্দান্ত সরঞ্জাম দেখিয়েছেন: উপনাম যাই হোক না কেন করতে .profileতোমার জন্য ব্যবহার crontabকরা crontab -i-iপতাকা মুছে ফেলার পূর্বে নিশ্চিতকরণ জন্য অনুরোধ।

সুতরাং, আপনি যদি crontab -eএটি করেন তবে এটি যথারীতি সম্পাদনা করতে এগিয়ে যায়, তবে আপনি যদি দুর্ঘটনাক্রমে করেন তবে আপনাকে crontab -rএকটি নিশ্চিতকরণ প্রম্প্ট দিয়ে স্বাগত জানানো হবে।


এটি তাত্ক্ষণিক সমস্যার সাথে সহায়তা করে না ...
ভনব্র্যান্ড

0

আমি তাই মনে করি না. এই গুরুত্বপূর্ণ ফাইলটি (/ etc / var / spool / home এর সাথে অন্য সকলের সাথে) ব্যাকআপ শুরু করার সময় এসেছে।

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