باز کردن ایمیج dd- how to open dd raw image file
سلام
بعضی وقتا نیازه که از ساختار خام یه ذخیره ساز یه پشتیبان داشته باشیم. تو سیستم عامل لینوکس این کار رو با برنامه dd میشه انجام داد. با استفاده از این نوع ایمیج گرفتن، ساختار پارتیشن ذخیره ساز هم حفظ میشه. فرض کنین بخوایم از یه فلش ایمیج بگیریم. اول باید ببینیم که تو شاخه /dev، فلش ما به چه اسمی شناخته شده. فرض کنین شده /dev/sdc. با دستور زیر میشه ایمیج از یه فلش ذخیره کرد.
sudo dd if=/dev/sdc of=<image file name>
برای رستور کردن ایمیج هم میشه دستور زیر رو استفاده کرد:
sudo dd if=<image file name> of=/dev/sdc
حالا یه مساله
فرض کنین میخوایم از ایمیجی که گرفتیم، یه داده رو بخونیم. مثلا یه فایل رو. تو این حالت یا باید ایمیج رو برگردونیم تو یه فلش یا اینکه مانت کنیم تو یه پوشه مشخص. روش اول که حامبالیه، پس روش دوم رو استفاده میکنیم
ااصالتا یه ایمیج خام، ساختار کل فضا رو ذخیره میکنه. مثلا وقتی یه دیسک ۱۶ گیگ، ۱ گیگ داشته باشه، بازم فایل ایمیش میشه ۱۶ گیگ. و یه مساله دیگه، پارتیشن ها هم تو دیست جای جداگانه میگیرن.
پس وقتی بخواین یه ایمیج رو مانت کنین، باید بگین کدوم پارتیشن داخل ایمیج. برای دیدن پارتیشن های داخل یه ایمیج از دستور fdisk استفاده کنین:
fdisk <image file name>
بعد کلید p رو بزنین تا ساختار پارتیشن رو نشون بده:
Command (m for help): p
Disk image_8_11_94.img: 15.7 GB, 15720251392 bytes
255 heads, 63 sectors/track, 1911 cylinders, total 30703616 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000f2868
Device Boot Start End Blocks Id System
image_8_11_94.img1 * 2048 133119 65536 c W95 FAT32 (LBA)
image_8_11_94.img2 133120 21233663 10550272 83 Linux
Command (m for help):
میبینین که تو ایمیج مثال، دو تا پارتیشن وجود داره. من میخوام دومی رو مانت کنم. عدد مهم تو این اطلاعات، عدد زیر start هست. این عدد مشخص کننده بلاک شروع پارتیشن هست. هر بلاک هم بر اساس خروجی دستور ۵۱۲ بایت هست. خب پس باید تو فایل به اندازه start * block size جلو بریم تا به محل پارتیشن مورد نظر برسیم. پس برای مانت کردن دستور زیر رو مینویسیم (از fdisk با زدن کلید q خارج میشیم)
sudo mount image_8_11_94.img /media/test/ -o offset=68157440
اگر تو مانت کردن به نوع پارتیشن خطا داد، با سویچ -t نوع پارتیشن رو مشخص کنین