एक डिस्क छवि बनाएँ। निम्न आदेश एक 10G विरल छवि बनाएगा :
# dd if=/dev/zero of=mydisk.img bs=1 count=0 seek=10G
0+0 records in
0+0 records out
0 bytes (0 B) copied, 1.6554e-05 s, 0.0 kB/s
# ls -lh mydisk.img
-rw-r--r--. 1 root root 10G Jun 17 15:27 mydisk.img
छवि को विभाजन के साथ:
# fdisk mydisk.img
सुनिश्चित करें कि आप विभाजन बना सकते हैं जो कम से कम उतना ही बड़ा है जितना कि आपने नकल किया है! इस उदाहरण के लिए मैंने निम्नलिखित लेआउट बनाया:
# fdisk -l mydisk.img
Disk mydisk.img: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders, total 20971520 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: 0x5519250f
Device Boot Start End Blocks Id System
mydisk.img1 2048 2099199 1048576 83 Linux
mydisk.img2 2099200 4196351 1048576 83 Linux
kpartx
विभाजनों में से प्रत्येक के अनुरूप उपकरण बनाने के लिए उपयोग करें :
# kpartx -av mydisk.img
add map loop0p1 (253:3): 0 2097152 linear /dev/loop0 2048
add map loop0p2 (253:4): 0 2097152 linear /dev/loop0 2099200
इसके तहत प्रविष्टियाँ बनाएंगे /dev/mapper
:
# ls -l /dev/mapper
lrwxrwxrwx. 1 root root 7 Jun 17 15:33 loop0p1 -> ../dm-3
lrwxrwxrwx. 1 root root 7 Jun 17 15:33 loop0p2 -> ../dm-4
अब आप अपनी विभाजन छवियों को अपने विभाजन पर कॉपी कर सकते हैं:
# dd if=image_of_partition_1.img of=/dev/mapper/loop0p1 bs=1M
# dd if=image_of_partition_2.img of=/dev/mapper/loop0p2 bs=1M
अब डिवाइस मैपिंग को हटा दें:
# kpartx -dv mydisk.img
del devmap : loop0p2
del devmap : loop0p1
loop deleted : /dev/loop0
और तुम सब सेट हो!
टिप्पणियाँ
आप एक ही चीज़ का उपयोग करके dd
और seek
पैरामीटर (अपनी डिस्क छवि फ़ाइल में उपयुक्त ऑफ़सेट पर लिखना शुरू करने के लिए) का उपयोग करने के बजाय पूरा कर सकते हैं kpartx
, लेकिन मुझे लगता है कि उपयोग kpartx
करना कम त्रुटि-प्रवण है।
इससे बूट करने योग्य छवि नहीं होगी। यदि आप ऐसा चाहते हैं, तो आपको इस पर बूट लोडर भी स्थापित करना होगा।