ddrescue کا استعمال کرتے ہوئے لینکس پر ڈیٹا بازیافت کریں۔

Ddrescue Ka Ast Mal Krt Wy Lynks Pr Y A Bazyaft Kry



ddrescue ایک ٹول ہے جو کسی فائل یا بلاک ڈیوائس جیسے کہ ہارڈ ڈرائیو، SSDs، RAM ڈسک، CDs، DVDs، اور USB اسٹوریج ڈیوائسز سے ڈیٹا بازیافت کرنے کے لیے استعمال ہوتا ہے۔ یہ ڈیٹا کو ایک بلاک ڈیوائس سے دوسرے بلاک میں کاپی کرتا ہے، خراب ڈیٹا بلاکس کو چھوڑ کر صرف اچھے کو منتقل کرتا ہے۔ ddrescue ایک طاقتور ریکوری ٹول ہے جو مکمل طور پر خودکار ہے کیونکہ اسے ریکوری آپریشن کے دوران کسی مداخلت کی ضرورت نہیں ہے۔ مزید یہ کہ اسے کسی بھی وقت روکا اور دوبارہ شروع کیا جا سکتا ہے۔ ddrescue نقشہ فائل . ddrescue کی دیگر اہم خصوصیات ذیل میں درج ہیں:
  • یہ بازیافت شدہ ڈیٹا کو اوور رائٹ نہیں کرتا ہے لیکن تکراری وصولی کی صورت میں خلا کو پُر کرتا ہے۔ تاہم، اگر ٹول کو واضح طور پر ایسا کرنے کی ہدایت کی گئی ہو تو اسے چھوٹا کیا جا سکتا ہے۔
  • متعدد فائلوں یا بلاکس سے ایک فائل میں ڈیٹا بازیافت کریں۔
  • متعدد قسم کے ڈیوائس انٹرفیس جیسے SATA، ATA، SCSI، MFM ڈرائیوز، فلاپی ڈسک، اور SD کارڈز کو سپورٹ کرتا ہے۔

اس گائیڈ میں، میں اس ناقابل یقین حد تک مفید ڈیٹا ریکوری ٹول کو تلاش کروں گا۔ میں اس کی انسٹالیشن کے عمل، اور بلاک ڈیوائس یا پارٹیشن کو بازیافت کرنے کے لیے اس کا استعمال کرنے کے طریقہ پر بھی بات کروں گا۔

نوٹ: میں اس گائیڈ میں دی گئی ہدایات کے لیے لینکس ڈسٹری بیوشن (اوبنٹو 22.04) استعمال کر رہا ہوں۔ ddrescue یوٹیلیٹی کی تنصیب کا عمل مختلف ہو سکتا ہے، لیکن ہدایات تمام لینکس کی تقسیم میں یکساں ہوں گی۔







ddrescue انسٹال کرنا

لینکس پر ddrescue انسٹال کرنے کے لیے، خاص طور پر اوبنٹو اور اس کے ذائقے یا ڈیبین پر مبنی distros، استعمال کریں:



sudo مناسب انسٹال کریں gddrescue

اسے انسٹال کرنے کے لیے REHL ، فیڈورا ، اور CentOS ، سب سے پہلے فعال کریں گرم (Enterprise Linux کے لیے اضافی پیکجز)۔



sudo yum انسٹال کریں گرم رہائی

مندرجہ بالا کمانڈ متعلقہ تقسیم کے نئے ورژن کے لیے ہے۔





پھر ddrescue انسٹال کرنے کے لیے درج ذیل کمانڈ پر عمل کریں:

sudo yum انسٹال کریں ddrescue

آرک پر مبنی لینکس کی تقسیم کے لیے جیسے آرک-لینکس اور منجارو ، ddrescue ریکوری یوٹیلیٹی کو انسٹال کرنے کے لیے نیچے دی گئی کمانڈ کا استعمال کریں۔



sudo pacman -ایس ddrescue

چونکہ میں Ubuntu 22.04 استعمال کر رہا ہوں، اس لیے میں اسے انسٹال کرنے کے لیے APT پیکیج مینیجر کا استعمال کروں گا۔

بنیادی باتوں کو سمجھنا

ڈیٹا ریکوری کرنے کے لیے ddrescue ٹول استعمال کرنے سے پہلے، میں ان صارفین کو تجویز کروں گا جو ریکوری کے عمل میں نئے ہیں لینکس کے کچھ نام دینے کے کنونشن کو سمجھیں۔

لینکس بلاکس (آلات) کو فائلوں کے طور پر پہچانتا ہے اور انہیں میں رکھتا ہے۔ /dev ڈائریکٹری /dev ڈائریکٹری میں فائلوں کی فہرست بنانے کے لیے، استعمال کریں۔ ls/dev کمانڈ.

دی ہارڈ ڈرائیوز (اسٹوریج بلاکس) کے ساتھ نمائندگی کی جاتی ہے۔ sd حروف تہجی کے بعد؛ متعدد اسٹوریج ڈیوائسز کی صورت میں فائلوں کو /dev/sd کے طور پر دکھایا جائے گا۔ ایک /dev/sd ب، اور اسی طرح.

اگر اسٹوریج ڈیوائس کے پاس ہے۔ پارٹیشنز ، پھر ان کی نمائندگی متعلقہ ڈرائیو فائل نام کے ساتھ ایک نمبر سے کی جائے گی، جیسے /dev/sda 1 ، /dev/sda 2 ، اور اسی طرح.

سسٹم کے ساتھ تمام بلاکس اور دیگر منسلک آلات کی فہرست بنانے کے لیے، فہرست بلاک کا استعمال کریں۔ lsblk کمانڈ:

lsblk

ddrescue کمانڈ پورے بلاک (MBR اور پارٹیشنز پر مشتمل) یا ایک پارٹیشن کو بھی بازیافت کر سکتی ہے۔ دوسری طرف، اگر آپ کو کسی مخصوص پارٹیشن سے صرف مخصوص فائلوں کو بازیافت کرنے کی ضرورت ہے، تو بہتر ہے کہ پورے بلاک کی بجائے پارٹیشن کو بازیافت کریں۔

اہم تحفظات

ddrescue یوٹیلیٹی کو استعمال کرنے سے پہلے، کچھ انتہائی اہم نکات پر غور کرنا چاہیے:

  • نصب شدہ بلاک کو بازیافت کرنے کی کوشش نہ کریں، بلاک صرف پڑھنے کے موڈ میں بھی نہیں ہونا چاہئے۔
  • I/O کی غلطیوں کے ساتھ بلاک کو ٹھیک کرنے کی کوشش نہ کریں۔
  • سسٹم ریبوٹ پر ان پٹ اور آؤٹ پٹ ڈیوائس کے نام تبدیل کر سکتا ہے۔ کاپی کرنے کا عمل شروع کرنے سے پہلے یقینی بنائیں کہ ڈیوائس کے نام درست ہیں۔
  • اگر آپ آؤٹ پٹ ڈیوائس کے طور پر ایک علیحدہ بلاک استعمال کر رہے ہیں، تو ڈیوائس پر کوئی بھی ڈیٹا اوور رائٹ ہو جائے گا۔

ddrescue استعمال کرنا

ddrescue یوٹیلیٹی کو انسٹال کرنے اور نام دینے کے کنونشنز کو سمجھنے کے بعد، اگلا مرحلہ ناکام ہونے والی ڈسک کی شناخت کرنا اور ddrescue ٹول کا استعمال کرتے ہوئے اسے بازیافت کرنا ہے۔

خراب شدہ بلاک کی بازیافت

پہلی مثال پورے بلاک کو بحال کرنے کے عمل کو گھیرے گی۔ سب سے پہلے، استعمال کرتے ہوئے بلاکس کی فہرست lsblk کمانڈ:

lsblk -او NAME، SIZE، FSTYPE

دی -او پرچم کا استعمال یہ بتانے کے لیے کیا جاتا ہے کہ کس قسم کی معلومات (فیلڈز) کمانڈ کو آؤٹ پٹ کرنا چاہیے۔ میں نے ذکر کیا ہے۔ NAME ، سائز ، اور FSTYPE یا فائل سسٹم کی قسم۔

اب، آپ بچائے گئے امیج فائل کو محفوظ کرنے کے لیے ٹارگٹ بلاک، پارٹیشن اور مقام کی شناخت کر سکتے ہیں۔

نوٹ کرنے کے لئے ایک اور اہم بات یہ ہے کہ لینکس پر، بلاک کا نام بوٹ پر متحرک طور پر تفویض کیا جاتا ہے اور ریبوٹ کے بعد، بلاکس کے نام تبدیل ہوسکتے ہیں. لہذا، بلاک کے ناموں کو نوٹ کرتے وقت محتاط رہیں۔

اب، روٹ ڈائرکٹری میں لاگ فائل کے ساتھ ایک تصویری فائل کے طور پر بلاک کو بچانے کے لیے درج ذیل نحو کا استعمال کریں۔

sudo ddrescue -d -rX / دیو / [ بلاک ] [ راستہ / نام ] .img [ logfile_name ] .log

نوٹ: بدل دیں۔ [بلاک] ، [راستہ/نام] تصویری فائل کی، اور [لاگ فائل_نام] اس کے مطابق ترجیحی ناموں کے ساتھ۔

اس مثال میں، میں بازیافت کر رہا ہوں۔ /dev/sda روٹ ڈائرکٹری میں تصویری فائل کے نام کے ساتھ recovery.img . لاگ فائل جسے نقشہ فائل بھی کہا جاتا ہے ضروری ہے اگر آپ کسی بھی وقت ریکوری کو دوبارہ شروع کرنا چاہتے ہیں۔

sudo ddrescue -d -r2 / دیو / sda2 recovery.img recovery.log

مذکورہ کمانڈ میں دو اہم جھنڈے استعمال کیے گئے ہیں۔

d - بالواسطہ ٹول کو یہ بتانے کے لیے استعمال کیا جاتا ہے کہ کرنل کیشے کو نظر انداز کرتے ہوئے ڈسک تک براہ راست رسائی حاصل کی جائے۔
rX دوبارہ کوشش کرنا ٹول کو بتانے کے لیے استعمال کیا جاتا ہے کہ وہ خراب سیکٹر X کو بار بار آزمائے۔

مندرجہ بالا کمانڈ پر عمل کرنے پر، آپ کو فائل براؤزر میں ناموں کے ساتھ دو فائلیں نظر آئیں گی۔ recovery.img اور recovery.log .

بحالی کا وقت ان پٹ بلاک کے سائز اور نقصان پر منحصر ہے۔ اگر آپ ایک بڑے بلاک کو بحال کر رہے ہیں، تو میں لاگ فائل رکھنے کی تجویز کرتا ہوں کیونکہ اس عمل کو مکمل کرنے میں کئی گھنٹے یا دن بھی لگ سکتے ہیں۔

مندرجہ بالا کمانڈ کی آؤٹ پٹ ذیل میں دی گئی ہے:

آؤٹ پٹ امیج میں، ipos ان پٹ فائل کی ان پٹ پوزیشن ہے جہاں سے کاپی شروع کی گئی ہے اور السر آؤٹ پٹ فائل پر آؤٹ پٹ پوزیشن ہے جہاں ڈیٹا لکھا جا رہا ہے۔

دی غیر کوشش کی کیا بلاک کا سائز زیر التواء نہیں ہے۔ دی بچایا کامیابی سے برآمد ہونے والے بلاک کے سائز کی نشاندہی کرتا ہے۔ دی pct کو بچایا فیصد میں ڈیٹا کی کامیاب بازیافت کی نشاندہی کرتا ہے۔ شرائط، غیر تراشی ہوئی ، غیر ختم ، برا سیکٹر ، اور خراب علاقوں خود وضاحتی ہیں. تاہم، کے غلطیاں پڑھیں اصطلاح نمبروں میں ناکام پڑھنے کی کوشش کی نشاندہی کرتی ہے۔

دی چلانے کا وقت ٹول کو اس عمل کو مکمل کرنے میں لگنے والا وقت دکھاتا ہے، جبکہ باقی وقت بحالی کے عمل کو مکمل کرنے کے لیے باقی وقت ہے۔ مندرجہ بالا آؤٹ پٹ بقیہ وقت 0 دکھاتا ہے کیونکہ عمل ختم ہو چکا ہے، نامکمل عمل کی درج ذیل تصویر میں آؤٹ پٹ پڑھیں۔

آئیے دیکھتے ہیں کہ ہمیں لاگ فائل میں کیا ملتا ہے؛ تیار کردہ لاگ فائل کو کھولنے کے لیے، استعمال کریں۔ vim recovery.log کمانڈ.

دی موجودہ صورت حال is + جس کا مطلب ہے کہ عمل ختم ہو گیا ہے، جبکہ موجودہ_پوز بلاک پر پوزیشن ہے.

موجودہ حالات کی فہرست درج ذیل جدول میں دی گئی ہے۔

? نقل کرنا
* تراشنا
/ سکریپنگ
- دوبارہ کوشش کر رہا ہے۔
ایف مخصوص بلاکس کو بھرنا
جی لاگ فائل تیار کرنا
+ عمل ختم ہو گیا ہے۔

اس کے نیچے، لاگ فائل میں ذیل میں درج حروف کی شکل میں پہلے سے بچائے گئے بلاکس کی حیثیت کے اشارے ہیں۔

? بلاک غیر آزمایا گیا ہے۔
* غیر تراشے ہوئے ناکام بلاک
/ غیر سکریپ شدہ ناکام بلاک
- برا سیکٹر ناکام بلاک
+ مکمل بلاک

تصویری فائل کو نئے بلاک میں بحال کرنا

ایک بار جب آپ بازیابی کا عمل مکمل کر لیں اور امیج فائل ہو جائے۔ اب آپ چاہیں گے کہ یہ خراب شدہ ڈرائیو سے نئی ڈرائیو میں چلا جائے۔ تصویری فائل کو نئے بلاک میں منتقل کرنے کے لیے، پہلے اس بلاک کو سسٹم سے جوڑیں اور پھر بلاک کا نام استعمال کرکے شناخت کریں۔ lsblk کمانڈ.

آئیے فرض کریں کہ یہ ہے۔ /dev/sdb تصویر کو نئے بلاک میں کاپی کرنے کے لیے درج ذیل کمانڈ کا استعمال کریں۔

sudo ddrescue -f recovery.img / دیو / sdb logfile.log

دی -f پرچم کو نئے بلاک کو اوور رائٹ کرنے کے لیے استعمال کیا جاتا ہے اگر کوئی ڈیٹا ہو۔ ذہن میں رکھیں کہ لاگ فائل کا نام مختلف ہونا چاہیے تاکہ اسے پہلے سے ذخیرہ شدہ لاگ فائل سے الگ رکھا جائے۔

مندرجہ بالا آپریشن کا استعمال کرتے ہوئے بھی کیا جا سکتا ہے ڈی ڈی ، ایک اور طاقتور کمانڈ جو فائلوں کو کاپی کرنے کے لیے استعمال ہوتی ہے۔

sudo ڈی ڈی اگر =recovery.img کی = / دیو / sdb

بحال کرنے سے پہلے، ذہن میں رکھیں کہ نیا بلاک اتنا بڑا ہونا چاہیے کہ پورے بحال شدہ بلاک کو برقرار رکھ سکے۔ مثال کے طور پر، اگر ریکوری بلاک 5GB ہے تو نیا بلاک 5GB سے بڑا ہونا چاہیے۔

اگر برآمد شدہ امیج فائل میں بہت ساری خرابیاں پیش آتی ہیں، تو پھر ان کو استعمال کرکے ٹھیک کیا جاسکتا ہے۔ fsck لینکس پر کسی حد تک کمانڈ۔ ونڈوز پر رہتے ہوئے، آپ استعمال کر سکتے ہیں۔ CHKDSK یا ایس ایف سی ایسا کرنے کا حکم دیتا ہے۔ تاہم، ریکوری کا انحصار خراب فائل کی پیدا کردہ غلطیوں کی تعداد پر ہے۔

اب بحالی اور بحالی کا عمل مکمل ہو گیا ہے۔ نوٹ کرنے والی ایک اور اہم بات یہ ہے کہ آپ تصویری فائل بنانے اور پھر اسے نئے بلاک میں کاپی کرنے کے بجائے کسی خراب شدہ بلاک کو براہ راست دوسرے بلاک پر بازیافت کرسکتے ہیں۔ ٹھیک ہے، اگلے حصے میں، میں اس عمل کا تفصیل سے احاطہ کر رہا ہوں۔

بلاک کو دوسرے بلاک میں بحال کرنا

کسی بلاک کو براہ راست نئے بلاک سے بازیافت کرنے کے لیے، پہلے بلاک کو سسٹم سے جوڑیں اور دوبارہ استعمال کریں۔ lsblk بلاک کے نام کی شناخت کے لیے کمانڈ۔ بلاک کے غلط نام پورے عمل میں خلل ڈال سکتے ہیں اور آپ ڈیٹا کھو سکتے ہیں۔

سورس بلاک اور ڈیسٹینیشن بلاک کی شناخت کے بعد، بلاک کو بازیافت کرنے کے لیے درج ذیل کمانڈ کا استعمال کریں:

sudo ddrescue -d -f -r2 / دیو / [ ذریعہ ] / دیو / [ منزل ] backup.log

چلو مان لیتے ہیں۔ /dev/sdb منزل بلاک ہے، لہذا کاپی کرنے کے لئے /dev/sda نئے بلاک کے استعمال کے لیے ڈائریکٹری:

sudo ddrescue -d -f -r2 / دیو / ایس ڈی اے / دیو / sdb backup.log

ایک بار پھر، اس عمل کی کوشش کرنے سے پہلے پہلے حصوں میں بیان کردہ اہم تحفظات کو دیکھیں۔

بازیافت شدہ تصویری فائلوں سے مخصوص ڈیٹا کی بازیافت

بہت سے معاملات میں، ڈیٹا ریکوری کا مقصد کرپٹڈ ڈرائیوز سے مخصوص فائلوں کو تلاش کرنا ہے۔ مخصوص فائل تک رسائی کے لیے آپ کو امیج فائل کو ماؤنٹ کرنے کی ضرورت ہے۔ لینکس پر، بازیافت شدہ امیج فائل کو استعمال کرکے تلاش کیا جاسکتا ہے۔ پہاڑ کمانڈ.

امیج فائل کو لگانے سے پہلے ایک فولڈر یا ڈائرکٹری بنائیں جس میں آپ امیج فائل کا مواد نکالنا چاہتے ہیں۔

mkdir ریکوری ماؤنٹ

اگلا، امیج فائل کو استعمال کرتے ہوئے ماؤنٹ کریں:

sudo پہاڑ -او loop recovery.img ~ / ریکوری ماؤنٹ

-o جھنڈا آپشنز کی نشاندہی کرتا ہے، جبکہ لوپ آپشن کا استعمال امیج فائل کو بلاک ڈیوائس کے طور پر کرنے کے لیے کیا جاتا ہے۔

اب آپ کو تصویری فائل کے مواد تک رسائی حاصل ہے، جیسا کہ درج ذیل اسکرین شاٹ میں دکھایا گیا ہے۔

بلاک کو ان ماؤنٹ کرنے کے لیے، استعمال کریں۔ umount کمانڈ.

sudo umount ~ / ریکوری ماؤنٹ

اعلی درجے کی خصوصیات

ایک مخصوص نقطہ سے بحالی شروع کرنے کے لیے، استعمال کریں۔ -میں پرچم یا -ان پٹ پوزیشن . یہ بائٹس میں ہونا چاہئے، بطور ڈیفالٹ یہ ہے۔ 0 بائٹس کسی خاص نقطہ سے نقل دوبارہ شروع کرنے کے لیے یہ ضروری ہے۔ مثال کے طور پر، اگر آپ 10 جی بی پوائنٹ سے کاپی کرنے کا عمل شروع کرنا چاہتے ہیں، تو درج ذیل کمانڈ استعمال کریں۔

sudo ddrescue -i10GiB / دیو / sda imagefile.img logfile.log

ان پٹ ڈیوائس کے زیادہ سے زیادہ سائز کی وضاحت کرنے کے لیے، -s پرچم استعمال کیا جائے گا. دی -s سائز کا مطلب ہے اور بطور استعمال بھی کیا جا سکتا ہے۔ -سائز بائٹس میں اگر ٹول ان پٹ فائل کے سائز کو پہچاننے میں ناکام ہو جاتا ہے تو اس کی وضاحت کے لیے اس آپشن کا استعمال کریں۔

sudo ddrescue -s10GiB / دیو / sda imagefile.img logfile.log

دی -پوچھو آپشن کافی آسان ہو سکتا ہے، کیونکہ یہ کاپی کرنے کا عمل شروع کرنے سے پہلے ان پٹ اور آؤٹ پٹ بلاکس کی تصدیق کا اشارہ کرتا ہے۔ جیسا کہ پہلے بات کی گئی ہے، سسٹم متحرک طور پر بلاکس کو نام تفویض کرتا ہے، اور وہ ریبوٹ پر تبدیل ہو جاتے ہیں۔ تو، اس صورت میں، یہ آپشن مفید ہو سکتا ہے۔

sudo ddrescue --پوچھو / دیو / sda imagefile.img logfile.log

اس کے علاوہ، کچھ دوسرے اختیارات کی فہرست ذیل میں ذکر کی گئی ہے:

-آر -معکوس نقل کی سمت کو ریورس کرنے کے لیے
-q - کافی تمام آؤٹ پٹ پیغامات کو دبانے کے لیے
میں - لفظی تفصیل کے لیے، تمام آؤٹ پٹ پیغامات
-p - پہلے سے مختص کرنا آؤٹ پٹ فائل کے لیے اسٹوریج کو پہلے سے مختص کرنے کے لیے
-پی -ڈیٹا-پیش نظارہ ڈیفالٹ پڑھنے والے تازہ ترین ڈیٹا کی ڈسپلے لائنیں 3 لائنیں ہیں۔

ddrescue کیسے کام کرتا ہے۔

ddrescue ایک طاقتور ریکوری الگورتھم کا استعمال کرتا ہے جسے چار مرحلوں میں تقسیم کیا گیا ہے:

1. نقل کرنا

2. تراشنا

3. کھرچنا

4. دوبارہ کوشش کرنا

ddrescue الگورتھم کا عمل درج ذیل تصویر میں دکھایا گیا ہے۔

نتیجہ

دی ddrescue ایک طاقتور ریکوری ٹول ہے جو ڈیٹا کو کاپی کر کے کرپٹ یا فیل ہونے والی ڈرائیو سے ڈیٹا کو دوسری ڈرائیو پر ریکور کرنے کے لیے استعمال کیا جاتا ہے۔ اسے ڈیفالٹ پیکیج مینیجر کی مدد سے کسی بھی لینکس ڈسٹری بیوشن پر آسانی سے انسٹال کیا جا سکتا ہے۔ اس گائیڈ میں مذکور اس ٹول کو استعمال کرنے سے پہلے اہم غور کو نوٹ کریں۔ ڈیٹا کاپی کرنے کا عمل آسان ہے، ڈرائیو کو ان ماؤنٹ کریں اور سورس ڈرائیو کے نام اور منزل ڈرائیو کے نام کے ساتھ ddrescue کمانڈ استعمال کریں۔ لاگ فائل کو استعمال کرنا نہ بھولیں، کیونکہ یہ ریکوری کے عمل کو دوبارہ شروع کرنے کے لیے کافی مفید ہو جاتا ہے۔