कैसे हटाए गए crontab को पुनर्प्राप्त करें


11

मैं टर्मिनल में crontab को संपादित करने की कोशिश कर रहा था, और मैंने गलती से crontab -rइसके बजाय टाइप किया crontab -e। कौन इस तरह की खतरनाक कमान का पता लगाने के लिए अक्षर के ठीक बगल में बैठेगा? इसके अलावा, मैं अभी भी यह पता लगाने की कोशिश कर रहा हूं crontab -rकि आप पुष्टि के लिए कैसे नहीं पूछते हैं?

मेरी विश्वसनीयता की कमी के बावजूद कि यह कैसे संभव है, मेरा सवाल है: क्या मैं खोए हुए क्रॉस्टब को पुनर्प्राप्त करने में सक्षम हूं?


बस जानकारी के लिए, crontab -r बिना संकेत के crontab को हटा देगा और crontab -i पुष्टि की मांग करेगा।
रमन सलोपाल

@RamanSailopal जानकारी के लिए धन्यवाद। यह वास्तव में खतरनाक है, इस तथ्य को देखते हुए कि -e और -r एक दूसरे के बगल में हैं (कम से कम क्वर्टी पर) ...
मिगुएल मेसकिटा अल्फाइते

1
इस तरह की सामग्री एक कारण है कि मैं क्यों उपयोग करता हूं etckeeper
डेविड फ़ॉस्टर

2
इसे बैकअप से पुनर्स्थापित करें
PiedPiper

@PiedPiper अगर मुझे लगता है कि बैकअप पर, यह एक मुद्दा नहीं होगा। मेरे पास होम फोल्डर का बैकअप लिया जा रहा है, लेकिन यह रूट कॉन्टैब नहीं है।
मिगुएल मेसक्विटा अल्फाइते

जवाबों:


7

आप लॉग से अपनी क्रोन नौकरियों को पा सकते हैं यदि एक बार पहले निष्पादित हो गया हो। जाँच करें /var/log/cron

आपके पास तृतीय पक्ष पुनर्प्राप्ति टूल के अलावा कोई पुनर्प्राप्ति विकल्प नहीं है।


किसी भी संकेत पर कि मैं कैसे जांच सकता हूं कि मुझे कुछ याद नहीं है? क्या होगा अगर कुछ साप्ताहिक, या मासिक कार्य था? क्या मुझे यह पता लगाने के लिए पिछले महीने की शुरुआत तक लाइन से लाइन पर जाना होगा कि क्या मेरे पास कुछ कम सामान्य क्रोनजोब चल रहा है?
मिगुएल मेसकिटा अल्फाइते

मुझे लगता है कि आपको पिछले एक महीने से लाइन में लगना होगा। क्षमा करें
मुहम्मद शेरिफ

"लाइन बाय लाइन" की कोई आवश्यकता नहीं। या grepतो -oया कमांड में निकालने के लिए sed/ awk/ cut/ आदि के साथ प्रयोग किया जाता है , और फिर पाइप किया जाता है sort -u
पैट्रिक

3
यदि आपको बस दैनिक या साप्ताहिक नहीं है, तो आपको शेड्यूल को पूरा करने के लिए लाइन-बाय-लाइन पर जाना होगा। कुछ ऐसा awk '$5 ~ "^CROND" && $6 == "(username)" { print }' /var/log/cron | sort -t ' ' -k 8होगा usernameजो कमांड द्वारा सॉर्ट की गई प्रविष्टियों को दिखाएगा , जिससे उनके बीच के अंतराल को देखना आसान हो जाए ताकि आप उनके शेड्यूल को दोबारा बना सकें।
जेम्स स्नेनर

@ जेम्ससेनर जो निश्चित रूप से जादू टोना है! उस के लिए अंगूठे!
मिगुएल मेसक्विटा अल्फाइते

2

मुझे यकीन नहीं है, crontabबिना बैकअप के फ़ाइल को पुनर्प्राप्त करना संभव है । लेकिन, मुझे पूरा यकीन है कि आप लॉग crontabसे अपनी फ़ाइल को पुनर्स्थापित कर सकते हैं cron। जहाँ तक मुझे याद है, उपवास प्रत्येक कमांड उपयोगकर्ता के साथ वहाँ सूचीबद्ध है।


2

यदि आपको एक विशिष्ट रेखा याद है, तो आप अपना डेटा वापस पाने के लिए पूरे उपकरण को पकड़ सकते हैं, इस शर्त पर कि कोई अन्य डेटा उसे ओवरराइड नहीं करता है। यह किसी भी फाइल के लिए काम करता है।

grep -a -B100 -A100 "command/you remember" /dev/sda1 > /tmp/cron.ressurected

समायोजन -B (efore) और -ए (fter) आपकी फ़ाइल के आकार के लिए, लेकिन चारों ओर 100 लाइनें एक क्रोन फ़ाइल के लिए पर्याप्त होनी चाहिए। अपने डिवाइस को टेक्स्ट मानने के लिए grep को बाध्य करने के लिए -a पैरामीटर की आवश्यकता होती है।

आपको परिणामी फ़ाइल में अपने डेटा से पहले और बाद में बाइनरी मेस को साफ करना होगा।

और इसमें बहुत समय लगता है। सौभाग्य।

आप इस उत्तर को भी देख सकते हैं: हटाए गए फ़ाइलों को हटाना रद्द / पुनर्प्राप्त करें | यूनिक्स और लिनक्स स्टैक एक्सचेंज

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.