কিভাবে ddrescue প্রক্রিয়া আবার শুরু?


9

আমাকে আমার 1 টিবি ইউএসবি এইচডি পুনরুদ্ধার করতে হবে। আমি ddrescueএটি সম্পাদন করতে ব্যবহার করছি । ddrescueএকবার শুরু করার পরে কি আবার শুরু করার উপায় আছে ?

আমি কমান্ডটি ব্যবহার করছি:

ddrescue /dev/sdd1 ./bye1t.dd_rescue.image

উত্তর:


14

ddrescue আবার চালু করা যেতে পারে, তবে এটি করার জন্য লগ ফাইল দরকার। লগ ফাইলটি এখনও অবধি ডিড্রেসকিউয়ের যে অগ্রগতি রেকর্ড করেছে তা রেকর্ড করবে এবং ddrescue পুনরায় আরম্ভ করার ফলে লগ ফাইলটি পড়তে হবে এবং এটি যেখানে ছেড়ে গিয়েছিল তা শুরু হবে।

লগ ফাইলটি তৃতীয় প্যারামিটার হবে:

ddrescue /dev/sdd1 ./bye1t.dd_rescue.image ~/sdd1.log

আপনি যদি ইতিমধ্যে লগ ফাইল ছাড়াই ডিড্রেসকিউ চালানো শুরু করেন এবং পরবর্তীতে ddrescue চালায় তবে এটি শুরুতে শুরু হবে কারণ এর মধ্যে ইতিমধ্যে কী উদ্ধার হয়েছে তার কোনও রেকর্ড নেই।

নোট : ddrescue এবং dd_rescue বিভিন্ন প্রোগ্রাম আছে।


1
সুতরাং আমি যদি প্রথমে একটি লগ ফাইল দিয়ে শুরু করি এবং আবার একই কমান্ডটি চালাব, এটি স্বয়ংক্রিয়ভাবে শেষ লগ অবস্থান থেকে আবার শুরু হবে? / সম্পাদনা: এটি শেষ অবস্থান থেকে শুরু হয়।
কিওয়ার্টি

6

এমনকি যদি আপনি কোনও লগফিল নির্দিষ্ট করতে ভুলে যান, তবে আশা থাকতে পারে:

জেনারেট করুন-মোড

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

অথবা আপনি সম্ভবত কোনও ড্রাইভ অনুলিপি করা শুরু করেছেন dd conv=noerror,syncএবং এখন উপরে বর্ণিত একই পরিস্থিতিতে রয়েছেন। এই ক্ষেত্রে, নোট করুন যে আপনি ডিডি দ্বারা তৈরি একটি অনুলিপি syncরূপান্তর যুক্তির সাথে না চাওয়া হলে ব্যবহার করতে পারবেন না ।

হতাশ করবেন না (এখনও)। Ddrescue কিছু ক্ষেত্রে ইনপুট ফাইল এবং (আংশিক) অনুলিপি থেকে একটি আনুমানিক লগফিল উত্পন্ন করতে পারে, এটি প্রায় একটি নিখুঁত লগফাইলে হিসাবে ভাল। এটিকে কেবল ধরে নিয়েই যে সেক্টরগুলিতে সমস্ত শূন্যকে উদ্ধার করা যায়নি।

তবে, যদি অনুলিপিটির গন্তব্যটি ড্রাইভ বা পার্টিশন, (বা বিদ্যমান নিয়মিত ফাইল এবং কাটানোর অনুরোধ করা হয়নি), সম্ভবত আপনাকে প্রথম থেকেই ddrescue পুনরায় চালু করতে হবে। (অবশ্যই একটি লগফাইলে এবার)। কারণটি হ'ল পুরানো ডেটা ড্রাইভে উপস্থিত থাকতে পারে যা এখনও ওভাররাইট করা হয়নি, এবং এটি অ-চেষ্টা করা হলেও শূন্য নয়।

উদাহরণস্বরূপ, যদি আপনি প্রথমে এই আদেশগুলির মধ্যে একটি ব্যবহার করে থাকেন:

ddrescue infile outfile

অথবা

dd if=infile of=outfile conv=noerror,sync

আপনি এই আদেশটি দিয়ে একটি আনুমানিক লগফিল তৈরি করতে পারেন:

ddrescue --generate-mode infile outfile logfile

ডিস্কটি কী উদ্ধার করা হচ্ছে এবং উদ্ধার ডেটা ছাপিয়ে দেওয়া হচ্ছে?
বুরূজ

3

যেমনটি অন্যেরা বলেছেন, আপনার সর্বদা তৃতীয় প্যারামিটার হিসাবে একটি লগফাইলে নির্দিষ্ট করা উচিত, যা পুনরায় শুরু করার অনুমতি দেবে। যেহেতু আপনি এটি করেন নি, এটি আপনাকে এখানে সহায়তা করবে না। প্রক্রিয়াটি কোন পয়েন্টে পৌঁছেছে তা আপনি যদি জানেন তবে আপনি সেই বিন্দুটি থেকে শুরু করতে --input-positionএবং --output-positionপরামিতিগুলি ব্যবহার করতে পারেন (উভয় প্যারামিটারগুলিকে একই মান হিসাবে সেট করার বিষয়টি নিশ্চিত করুন, অন্যথায় আউটপুট ক্ষতিগ্রস্থ হবে)।


2

যেহেতু আপনি কোনও লগ ফাইল তৃতীয় প্যারামিটার হিসাবে নির্দিষ্ট করেননি, তাই পুনরায় শুরু স্বয়ংক্রিয়ভাবে করা যায় না। আপনি যদি ইতিমধ্যে উদ্ধারকৃত সেক্টরগুলি জানেন তবে সিনট্যাক্সটি সহজ hand একটি লগ নির্দিষ্ট করার সময় অন্য একটি ডামি উদ্ধার শুরু করুন এবং এটি বিভিন্ন অঞ্চল পড়তে দিন। তারপরে আপনার প্রথম ফাইলে ইতিমধ্যে উদ্ধারকৃত অঞ্চলগুলি উপস্থাপন করতে লগ সম্পাদনা করুন। এখন আপনার পূর্ববর্তী কমান্ডটি পুনরায় রান করুন তবে তৃতীয় প্যারামিটার হিসাবে লগ ফাইলটির নাম দিন। ddrescue এরপরে প্রথম অপ্রচলিত খাতটিতে আবার শুরু হবে।


2

Https://wiki.archlinux.org/index.php/Disk_ ক্লোনিং দেখে মনে হচ্ছে যে conv=noerror,syncস্যুইচটি দিয়ে ddআসলে কোনও ব্লকের শেষে শূন্যগুলি যুক্ত করা হয়েছে , পড়ার ত্রুটিগুলি ঠিক কোথায় ঘটেছে তা নয়। এটি 2013-08-29-এ মাইলস ওল্ববের উত্তরের তথ্যের পরিপন্থী।

উদাহরণস্বরূপ, যদি একটি সঠিক ক্রম হয় 198123283এবং মাঝখানে কোনও পাঠ্য ত্রুটি থাকে তবে এটি লিখবে 198283000, না 198000283

সুতরাং বাস্তবে পড়ার ত্রুটিগুলির ক্ষেত্রে প্রস্তাবিত পদ্ধতিটি সঠিক হবে না - এমন কিছু অঞ্চল থাকবে যা পাঠযোগ্য ছিল যা শূন্যে ভরা শেষ হবে, তবুও "উদ্ধার" হিসাবে বিবেচিত হবে।

যাইহোক, জিরো দিয়ে গন্তব্য ড্রাইভ পূরণ করে (বা কমপক্ষে নিখরচায় জায়গা, উদাহরণস্বরূপ উইনহেক্সের সাহায্যে সম্পন্ন করা যেতে পারে) এই জাতীয় পুনরুদ্ধারের প্রচেষ্টা শুরু করা ভাল অভ্যাস।


হাই গ্যাব্রিয়েলবি, সুপার ব্যবহারকারীকে স্বাগতম welcome আমি আপনার উত্তরটি সম্পাদনা করেছি, তবে আমি নিশ্চিত নই যে এটি একা দাঁড়ানো যথেষ্ট-সম্ভবত আপনি আরও একটি মূল বিভাগকে অন্তর্ভুক্ত করার জন্য এটি সম্পাদনা করতে পারেন যা মূল প্রশ্নটিও সম্বোধন করে?
বার্তেব

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