कमांड चलाने का प्रयास करें fdisk -l <img file>
। आमतौर पर अगर .img
फाइलें केवीएम वीएम से संपूर्ण डिस्क हैं तो वे तकनीकी रूप से एक आभासी डिस्क हैं।
उदाहरण
मुझे एक CentOS KVM VM मिला है जो file
कमांड के साथ ऐसा दिखाता है :
$ file centostest.img
centostest.img: x86 boot sector; partition 1: ID=0x83, active, starthead 1, startsector 63, 208782 sectors; partition 2: ID=0x8e, starthead 0, startsector 208845, 20755980 sectors, code offset 0x48
fdisk
इसके साथ चल रहा है:
$ sudo /sbin/fdisk -lu /kvm/centostest.img
last_lba(): I don't know how to handle files with mode 81ed
You must set cylinders.
You can do this from the extra functions menu.
Disk /kvm/centostest.img: 0 MB, 0 bytes
255 heads, 63 sectors/track, 0 cylinders, total 0 sectors
Units = sectors of 1 * 512 = 512 bytes
Device Boot Start End Blocks Id System
/kvm/centostest.img1 * 63 208844 104391 83 Linux
/kvm/centostest.img2 208845 20964824 10377990 8e Linux LVM
Partition 2 has different physical/logical endings:
phys=(1023, 254, 63) logical=(1304, 254, 63)
यदि आप इनमें से किसी एक विभाजन को माउंट करना चाहते हैं, तो आप इस प्रकार कर सकते हैं:
fdisk (सिलेंडर आउटपुट)
- ब्लॉक का आकार 512 बाइट्स और स्टार्ट-ब्लॉक 63 है।
- ऑफसेट 512 * 63 = 32256 है।
fdisk (सेक्टर आउटपुट)
- ब्लॉक का आकार 512 बाइट्स और स्टार्ट-ब्लॉक 1 है।
- ऑफसेट 512 * 1 = 512 है।
तो माउंट कमांड होगा:
सिलिंडर में
$ mount -o loop,offset=32256 centostest.img /mnt/tmp
अन्य विभाजन को माउंट करने के लिए (512 * 208845 = 106928640):
$ mount -o loop,offset=106928640 centostest.img /mnt/tmp
सेक्टरों में
$ mount -o loop,offset=512 centostest.img /mnt/tmp
अन्य विभाजन को माउंट करने के लिए (512 * 14 = 7168):
$ mount -o loop,offset=7168 centostest.img /mnt/tmp
ध्यान दें
यह तभी काम करेगा जब माउंट "विभाजन" के भीतर फाइलसिस्टम के प्रकार को निर्धारित कर सकता है जिसे आप माउंट करने का प्रयास कर रहे हैं। आपको शामिल करने -t auto
या विशिष्ट होने की आवश्यकता हो सकती है और बताएं mount
कि यह -t ext4
उदाहरण के लिए है।
संदर्भ
# mount -t auto -o ro,loop,offset=512 gmapsupp.img /mnt/iso/
\mount: you must specify the filesystem type