দুর্ঘটনাক্রমে, আমি rm
একটি ফাইল মুছতে চাইনি on লিনাক্সের অধীনে কি আবার কোনও উপায় রয়েছে?
দুর্ঘটনাক্রমে, আমি rm
একটি ফাইল মুছতে চাইনি on লিনাক্সের অধীনে কি আবার কোনও উপায় রয়েছে?
উত্তর:
নিম্নলিখিত পাঠ্য ফাইলগুলি পুনরুদ্ধার করার জন্য জেনেরিক পদক্ষেপ রয়েছে।
প্রথমে ওয়াল কমান্ড ব্যবহার করে ব্যবহারকারীকে বলতে যে সিস্টেমটি একক ব্যবহারকারী মোডে নেমে যাচ্ছে:
# wall
System is going down to .... please save your work.
বার্তা প্রেরণের জন্য CTRL + D টিপুন।
এরপরে সিস্টেমে একক ব্যবহারকারী মোডে নিয়ে যাওয়ার জন্য init 1 কমান্ডটি ব্যবহার করুন:
# init 1
ফাইলগুলি পুনরুদ্ধার করতে গ্রেপ (traditionalতিহ্যবাহী ইউনিক্স উপায়) ব্যবহার করা হচ্ছে
নিম্নলিখিত গ্রেপ বাক্য গঠন ব্যবহার করুন:
grep -b 'search-text' /dev/partition > file.txt
অথবা
grep -a -B[size before] -A[size after] 'text' /dev/[your_partition] > file.txt
কোথায়,
-i : Ignore case distinctions in both the PATTERN and the input files i.e. match both uppercase and lowercase character.
-a : Process a binary file as if it were text
-B Print number lines/size of leading context before matching lines.
-A: Print number lines/size of trailing context after matching lines.
"NixCraft" শব্দটি / dev / sda1 এর সাথে শুরু করে পাঠ্য ফাইলটি পুনরুদ্ধার করতে আপনি নিম্নলিখিত আদেশটি চেষ্টা করতে পারেন:
# grep -i -a -B10 -A100 'nixCraft' /dev/sda1 > file.txt
File.txt দেখতে পরবর্তী vi ব্যবহার করুন।
মুছে ফেলা ফাইল পাঠ্য ফাইল হলে এই পদ্ধতিটি কেবলমাত্র কার্যকর। আপনি যদি ext2 ফাইল সিস্টেম ব্যবহার করেন তবে পুনরুদ্ধার কমান্ডটি ব্যবহার করে দেখুন।
Http://www.cyberciti.biz/tips/linuxunix-recover-deleted-files.html এ পাওয়া গেছে
init 1
ম্যানুয়ালি প্রতিটি সিস্টেম ডেমনকে বাদ দিয়ে sshd
। আমি আরও মনে করি এই মুহুর্তে অস্থায়ী ডেটা দিয়ে ফাইলগুলি ওভাররাইট করা এড়াতে আপনার সমস্ত ফাইল সিস্টেম আরও পুনরায় গণনা করা উচিত এবং tmpfs (আপনার টেম্প ফাইলগুলি র্যামের সাথে মাপসই করা হবে) ধরে রাখা উচিত। আপনাকে অবশ্যই এটি অন্য কোথাও অনুলিপি করতে হবে, হয় কোনও রিমোট সার্ভারে বা স্থানীয় ফাইল সিস্টেমে পুনরায় সংস্থান করার পরে আরডাব্লু।
dd
করুন, এটি ব্যবহার করে পুরো পার্টিশনটি কোনও ফাইলটিতে অনুলিপি করুন এবং এর মধ্যে ফাইলটি আবিষ্কার করার চেষ্টা করুন (ব্যবহার করে grep
, বা সম্পাদক)।সম্পাদনা: কখনও কখনও এর ddrescue
চেয়ে ভাল কাজ করে dd
।
যদি আপনার ফাইল সিস্টেমটি ext3 হয় তবে ext3grep ব্যবহার করুন ।
টেস্টডিস্কের একটি অপসারণ বিকল্প রয়েছে যা লিনাক্সের সাথে কাজ করে।
নেই লিনাক্সের জন্য একটি, walkthrough । নোট করুন যে এটি ext2 , ext3 এবং ext4 এর জন্য কাজ করে ।
একমাত্র সঠিক উত্তরটি হ'ল: ব্যাকআপ থেকে আপনার ফাইল পুনরুদ্ধার করুন। প্রত্যেকের অবশ্যই একটি ব্যাকআপ রাখতে হবে। সত্যিই গুরুত্বপূর্ণ ফাইলগুলির জন্য আপনার দুটি ব্যাকআপ নেওয়া উচিত। আপনি না? ভাল, খুব খারাপ, এখানে একটি পাঠ শিখেছে (কঠোর শোনার জন্য দুঃখিত, তবে আমি ডেটা স্টোরেজে আছি এবং লোকেরা কিছু গুরুত্বপূর্ণ ডেটা না হারিয়ে অবধি ব্যাক আপ করবে না, এটি একটি প্রদত্ত সত্য So তাই হ্যাঁ, আপনি বোকা দেখছেন তবে অন্য প্রায় সবাই)।
ঠিক আছে, আপনার কোনও ব্যাকআপ নেই। আপনাকে অবশ্যই বন্ধ ফাইলসিস্টেম যা ফাইল অন্তর্ভুক্ত ব্যবহার অনলাইনে আছেন । যে কোনও লেখার ক্রিয়াকলাপ অবশ্যই ফাইলে ডেটাটিকে হোস করতে পারে যা ডিস্কে থাকতে পারে (কেবলমাত্র )।
আপনি যদি কেবল একটি পার্টিশনটিকে মূল ফাইল সিস্টেম এবং / হোম উভয় হিসাবে ব্যবহার করতে ট্র্যাজিক ত্রুটিটি করেন তবে তার অর্থ আপনাকে অন্য কোনও ডিভাইস থেকে বুট করতে হবে । এখন ।
যদি আপনার ফাইলটি কিছু সাধারণ ফর্ম্যাট (ওয়ার্ড ফাইল, জেপিজি, ইত্যাদি) এর হয়, তবে ফোটোরেক ব্যবহার করুন । ফটোরেক সর্বাধিক সাধারণ ফাইল ফর্ম্যাটগুলি পুনরুদ্ধার করতে পারে।
আপনি পূর্বে প্রস্তাবিত "ext3 Undelete" পদ্ধতিটি চেষ্টা করতে পারেন, তবে আপনাকে কমান্ড লাইনের সাথে স্বাচ্ছন্দ্য বোধ করতে হবে, বেসিক লিনাক্সের অভ্যন্তরীণ কার্যকারিতা বুঝতে হবে ইত্যাদি etc.
আপনার ফাইলটি যদি কিছু বিশেষ বিন্যাসের হয় তবে শক্ত ভাগ্য। কিছু বিশেষ ফাইলের জন্য ড্রাইভ স্ক্যান করার জন্য আমি একবার পার্ল প্রোগ্রাম লিখেছিলাম এবং এটি বেশ ভালভাবে কাজ করেছে; তবে আপনাকে এটি করতে কিছু প্রোগ্রামিং জানতে হবে এবং লিনাক্সের সাথেও বেশ স্বাচ্ছন্দ্য বোধ করতে হবে।
আমি কয়েক বছর আগে এটি করেছি। আমার পন্থাটি ছিল সরাসরি, হারানোর সময় নেই, আনমাউন্ট বিভাজন এবং তারপরে
dd if=/dev/hda1 of=backup_image.ext3
পার্টিশনের সঠিক অবস্থার ব্যাকআপ ফাইল রাখতে তারপরে আপনি আবার পার্টিশনটি মাউন্ট করতে পারেন এবং যথারীতি ব্যবসা চালিয়ে যেতে পারেন আপনি নিজের তৈরি চিত্রটিতে মুছে ফেলা ফাইলটি অনুসন্ধান করার জন্য। আপনার সমস্ত "খালি" জায়গার প্রয়োজন হওয়ায় চিত্রটি সম্ভবত খুব বড় হবে, তাই এটি সংরক্ষণ করার জন্য এটি ব্যবহারিক সমস্যা হতে পারে।
তারপরে কেবল পাঠ্য স্নিপেটগুলির পরে পার্টিশন সামগ্রীর স্যুপের কোথাও থাকার আশা করছিলাম এমন বিরক্তিকর অনুসন্ধানগুলি করা। উদাহরণস্বরূপ .tex- ফাইলগুলি খুঁজতে, আমি দৌড়ে এসেছি
grep --binary-files=text -1000 "subsection" < backup_image.ext3 > latexfiles
যা "সাবসেকশন" শব্দটির চারপাশে একটি বৃহত প্রসঙ্গ মুদ্রিত করেছে এবং ম্যানুয়ালি অনুসন্ধানের জন্য আউটপুটটিকে কোনও ফাইলে সংরক্ষণ করেছে। আমি এত বড় প্রেক্ষাপট ছাপিয়েছি যেহেতু ছবিটি সন্ধান করতে এত দীর্ঘ সময় লেগেছিল যে আমি যা চেয়েছিলাম তা তার চেয়ে বেশি বার করব না।
কমান্ড strings
আউটপুট থেকে বাইনারি আবর্জনা অপসারণে সহায়ক ছিল, তবে আমি যদি সঠিকভাবে স্মরণ করি তবে এটি সমস্ত নতুন লাইনও ছিনিয়ে নিয়েছে, যা সমস্যা হতে পারে।
বাইনারি ফাইলগুলি একইভাবে সন্ধান করতে, কোনও ব্যক্তির একটি বৈশিষ্ট্যযুক্ত শিরোনাম বা একটি নির্দিষ্ট ফাইলের কিছু সন্ধানে সাফল্য পাওয়া যেতে পারে তবে আমি এটিকে বরং একটি বড় দু: সাহসিক কাজ বলে মনে করি।
সংক্ষিপ্ত প্রযুক্তিগত নোট: ডিস্ক পুনরুদ্ধার এবং Ext3 / 4 এর সাথে প্রযুক্তিগত সমস্যা রয়েছে। এটি ব্যাখ্যা করা দীর্ঘ বিষয়, তবে সংক্ষেপে (এবং অপ্রতুলভাবে): Ext3 / 4 "চিহ্নিতকারীগুলি" সরিয়ে দেয় যা আপনি ওগুলি মুছলে মুছলে ফাইলগুলি ডিস্কে কোথায় রয়েছে তা ওএসকে বলে। ফাইলগুলি স্ক্র্যাব করা হয় না, তবে ডিস্কের শুরুতে তারা আর কোথায় শুরু হয় এবং শেষ হয় তা কেউ জানে না এবং কখনও কখনও সেগুলি বেশ কয়েকটি জায়গায় খণ্ডিতও হয়। কিছু অন্যান্য ফাইল সিস্টেম কেবল ফাইলগুলির স্ট্যাটাসগুলি "মুছে ফেলা" হিসাবে সেট করে, তবে অবস্থানের ডেটা রাখে। তারপরে মুছে ফেলা ফাইলটিকে এই পতাকা সহ ফাইল পয়েন্টারগুলি দেখার চেয়ে শক্ত নয় (খুব বেশি ক্রিয়াকলাপ না ঘটলে সেগুলি এখনও পাওয়া উচিত) এবং তারপরে আশা করি তাদের সামগ্রীটি ওভাররাইট করা হয়নি not
সেরা কি? অলঙ্কৃত, আমার দৃষ্টিতে। ঘন ঘন ব্যাকআপ হ'ল এই সমস্ত সমস্যার উত্তর। অটোমেটেড ব্যাকআপ সিস্টেম ব্যতীত গুরুত্বপূর্ণ ডেটা হ'ল একটি দুর্ঘটনা ঘটার অপেক্ষায়, আইএমএইচও।
বাধ্যতামূলক ব্যক্তিগত উপাখ্যান: আমি মুছে ফেলার জন্য চালু ছিল foo\ foo*
থেকে ~
। আমি লিখেছিলাম
rm -r foo<Tab>*
এটি দু: খজনকভাবে, যেহেতু foo
দৃশ্যত একটি সিমিলিংক ছিল এবং এটির সাথে মেলে একমাত্র ফাইল, শেলটি এতে তৈরি হয়েছিল
rm -r foo\ foo *
আমি এন্টার টিপলাম এবং সেখানে বসে কমান্ডটির দিকে চেয়ে থাকলাম, যা সর্বাধিক দ্বিতীয় হওয়া উচিত ছিল। আরও দীর্ঘ সময় পরে rm
আমাকে জিজ্ঞাসা করলাম আমি কি "লিখন-সুরক্ষিত ফাইল 'কিছু' মুছে ফেলতে চাই"। বেশ তাড়াতাড়ি আমি শীত অনুভব করেছি এবং খুব চাপ দিয়েছি এবং চাপ দিয়েছি Ctrl+c
। ~ আমার অর্ধেক ~
মোছা হয়েছে, কিন্তু আমি grepping এবং কিছু বেশী বা কম বর্তমান ব্যাকআপ বর্ণিত মূল্যের সবকিছু উপরে মাধ্যমে ফিরে পেতে পরিচালিত। আমার কিছু ব্যক্তিগতভাবে খুব মূল্যবান ছিল (পড়ুন: সময় গ্রহণ) এবং হারিয়ে যাওয়া ডিস্কে খুব সাম্প্রতিক পরিমাপের ডেটা ছিল, তবে আমি চতুর্মুখী ব্যাকআপ নিয়েছিলাম। একজন এখানে অদৃশ্য হয়ে গেল, অন্যটি স্কুলে সিস্টেম বিভ্রাটের কারণে, অন্যটি দুর্নীতিগ্রস্থ ছিল, এবং প্রথমে আমি চতুর্থটি খুঁজে পেলাম না, কারণ আমি ভুল করে ভুল ফোল্ডারে রেখেছিলাম :- ডি। ছিল নাrm -r
একটি লিখন-সুরক্ষিত ফাইল আটকে গিয়েছিলাম, চতুর্থটি খাওয়া হত যেহেতু সেই ফোল্ডারটি আমার মধ্যে এসএসএফএসের মাধ্যমে মাউন্ট করা হয়েছিল ~
। আমি সেই ধরণের জিনিসটি সম্পর্কে অনেক বেশি সচেতন।
যদি এটি স্ট্যান্ডার্ড আরএম হয় তবে আমি আশা করি আপনার একটি ব্যাকআপ আছে। মুছে ফেলা ফাইলটি পুনরুদ্ধার করার পদ্ধতিটি প্রতিটি ফাইল সিস্টেমের জন্য আলাদা হতে পারে, যদি তা করা যায় তবেই। লিনাক্সের অন্তর্নির্মিত "রিসাইকেল বিন" নেই; একবার আপনি একটি ফাইল মুছুন, এটি সব কিন্তু চলে গেছে।
যেভাবেই আপনি এটি করেন না কেন, আপনি কম্পিউটারটিকে আনপ্লাগ করতে চাইবেন - যত তাড়াতাড়ি সম্ভব কম্পিউটার চালানো চালিয়ে যাওয়া (এমনকি এটি বন্ধ করে দেওয়া) কারণ ডিস্কে লেখার সম্ভাবনা বাড়িয়ে দেয় এবং কিছু ব্লক পূর্বে দখল করে নিয়েছিল ফাইলটি ওভাররাইট করা হবে। একবার এটি হয়ে গেলে, হয় তা অন্য কম্পিউটারে রাখুন, একটি লাইভ সিডি রিবুট করুন (এটি কেবল পঠনযোগ্য মাউন্ট না করেই ড্রাইভটি মাউন্ট করবেন না তা নিশ্চিত করে), অথবা হার্ড ড্রাইভটি সরিয়ে একটি তথ্য পুনরুদ্ধারের বিশেষজ্ঞের কাছে নিয়ে যান।
আপনার প্রত্যাশা কম সেট করুন। যদি 'মুছে ফেলা' ডেটার উপরে কিছু লেখা থাকে তবে আপনি এটি হারাবেন।
আমি স্বল্প পরিমাণে পুনরুদ্ধার করেছি এবং আমার পাওয়া সেরা সরঞ্জামগুলি প্রায়শই নির্দিষ্ট ফর্ম্যাটের দিকে ডিজাইন করা হয়েছিল। উদাহরণস্বরূপ 'ফটোোরেক' দুর্দান্ত ছিল যখন আমি কয়েক হাজার জেপিগ উদ্ধার করতে চাইছিলাম।
রিকুভাও এখন আগে আমাকে সাহায্য করেছে এবং আপনার সেরা পছন্দ হতে পারে। (এটি নিখরচায়, তাদের বিজ্ঞাপন দিয়ে অর্থ প্রদানের ক্ষেত্রে ঠকাবেন না)
দিনের শেষে, আপনি যা হারিয়েছেন তা যদি গুরুত্বপূর্ণ হয় তবে ড্রাইভটি অফলাইনে নিয়ে যান এবং এতে লেখা বন্ধ করুন। পুনরুদ্ধার সফ্টওয়্যারটির প্রতিটি টুকরো ব্যবহার করুন আপনি যতক্ষণ না আপনার ডেটা ফেরত পাওয়া বা এটির পক্ষে বন্ধ হওয়া বন্ধ করে দেয় find যদি এটি সত্যিই গুরুত্বপূর্ণ হয়, এটি উচ্চ মূল্যে পেশাদারদের কাছে প্রেরণ করুন।
আপনি যদি আগে কোনও সরঞ্জাম দিয়ে ভাগ্য পেয়ে থাকেন তবে এটির সাথে পরিচিত হিসাবে এটি আবার দেখার চেষ্টা করুন। দিনের শেষে, সেগুলি ডিস্কে লেখা উচিত নয় এবং যাতে আপনি কাজ করে এমন কোনও সন্ধান না পাওয়া পর্যন্ত আপনি সফ্টওয়্যার ব্যবহার করতে পারেন।
আপনার জন্য এখানে একটি দুর্দান্ত নথি । আপনি সেখানে প্রচুর ব্যবহারিক টিপস পাবেন।
বিটিডব্লিউ, এখানে দুটি গ্রুপ রয়েছে:
অভিনন্দন, আপনি সবেমাত্র নিজেকে গ্রুপ 2 এ উন্নীত করেছেন; ;-)
আপনার যদি কোনও অ্যাপ্লিকেশন খোলা থাকে যা বর্তমানে ফাইলটি পড়ছে যেমন ভিএলসি বা লিব্রেঅফিস, তবে এই ভয়াবহ এল ও ইউএসও উত্তর আমাকে এই গোলমাল থেকে মুক্ত করতে সহায়তা করেছে। এটি করার জন্য এখানে একটি বিকল্প পদ্ধতি ।
সাধারণ ধারণাটি হল লিঙ্কটি সন্ধান করা /proc/PID/fd/DESCRIPTOR_NUMBER
এবং এটির মূল স্থানে এটি অনুলিপি করা। ব্যবহার করুন ps aux | grep APP_NAME
PID, খুঁজে পেতে এবং তারপর ls -la /proc/PID/fd/
সঠিক DESCRIPTOR_NUMBER খুঁজে।
"সঠিক" উত্তরটি ধরে নেওয়া হয় যে নির্ভরযোগ্যভাবে পুনরুদ্ধার করার কোনও পদ্ধতি নেই এবং পরিবর্তে ব্যাকআপ বা ক্লোনড সিস্টেম থেকে পুনরুদ্ধার করুন বা পুনরায় ইনস্টল করুন।
টেস্টডিস্ক একটি দুর্দান্ত সরঞ্জাম এবং ফাইল সিস্টেম এবং মুছে ফেলার অভ্যাসের উপর নির্ভর করে ফিজিকাল ড্রাইভ থেকে কিছু তথ্য উদ্ধার করতে সক্ষম হওয়ার অন্যান্য উপায় রয়েছে, তবে এতে জড়িত সময় এবং ব্যথা কেবল খুব দুর্দান্ত হতে পারে, তাই ব্যাকআপ রাখুন (এবং পরীক্ষাও করুন যে তারা বৈধ এবং পুনরুদ্ধারযোগ্য)!
যদি এটি অন্য ব্যবহারকারীর দ্বারা ওভাররাইট করা না হয় তবে আপনি ভাগ্যবান। আমি দুর্ঘটনাক্রমে আমার সিপিপি উত্স ফাইলটি মুছে ফেলেছি এবং সর্বাধিক নামক একটি সরঞ্জাম ব্যবহার করেছি , যা আমাকে ডিস্ক থেকে G০ জি সিপিপি ধ্বংসাবস্থা ফিরিয়ে আনতে সহায়তা করে। অবশেষে, আমি এই ফাইলগুলি ধ্বংস করে টুকরো টুকরো করে আমার ফাইলটি পুনরুদ্ধার করেছি। আমি মনে করি এটি নির্দিষ্ট ফাইলের ধরণের জন্য নির্দিষ্ট প্যাটার্নটি স্ক্যান করে এবং ফাইলগুলি পুনরুদ্ধার করতে ডিস্কের সমস্ত ইনডকে ট্র্যাভার করে! একবার চেষ্টা করে দেখুন!
যদি দুর্ঘটনাক্রমে আপনি লিনাক্স থেকে ফাইলটি মুছে ফেলে থাকেন তবে আপনি এই আদেশটি ব্যবহার করতে পারেন:
find /root -name "search text" -type f -exec mv {} "/home" \;
আপনার জায়গায় search text
ফাইলের নাম রাখতে পারেন এবং ডিরেক্টরিটি যেখানে আপনি তার জায়গায় পুনরুদ্ধার করতে চান তা নির্দিষ্ট করতে পারেন /home
।
আপনি এই স্ক্রিপ্ট চেষ্টা করতে পারেন। দুর্দান্তভাবে কাজ করে এবং বোঝায় যে আরএম এর জায়গায় ব্যবহার করা যেতে পারে এবং এখন এটি ব্যাপকভাবে ব্যবহার করা যেতে পারে।
https://github.com/nateshmbhat/safe-rm
rm
আমি গত সপ্তাহে একই সমস্যা পেয়েছি এবং আমি অনেক প্রোগ্রাম চেষ্টা করেছি, যেমন ডিবাগস, ফটোোরেক, এক্সট্রোগ্র্যাপ এবং এক্সটান্ডিলিট। ext3grep ফাইল পুনরুদ্ধার সেরা প্রোগ্রাম ছিল। সিনট্যাক্স খুব সহজ:
ext3grep image.img --restore-all
বা:
ext3grep /dev/sda3 --restore-all --after date -d '2015-01-01 00:00:00' '+%s' --before `date -d ‘2015-01-02 00:00:00’ ‘+%s’
এই ভিডিও শোটি একটি মিনি টিউটোরিয়াল যা আপনাকে সহায়তা করতে পারে।
rm
একটি "বিপজ্জনক" ইউএনআইএক্স / লিনাক্স কমান্ড (পড়ুন$ man rm
)। এটি অত্যন্ত সতর্কতার সাথে ব্যবহার করুন । যা বলেছিল, এটি নিশ্চিত যে ফাইলগুলি আপনি মুছে ফেলার একটি দ্রুত উপায়। আধুনিক লিনাক্স এবং ইউনিক্স ডেস্কটপ পরিবেশগুলি "ট্র্যাশ ক্যান" এর সমাধান সরবরাহ করে , যাতে ব্যবহারকারী সহজেই মুছে ফেলা ফাইলগুলি পুনরুদ্ধার করতে পারে।