Devo montare un file .img ma non so che tipo di .img sia. Come faccio a capire che tipo di file .img è?
# mount -t auto -o ro,loop gmapsupp.img /mnt/iso/
mount: you must specify the filesystem type
# file -k gmapsupp.img
gmapsupp.img: x86 boot sector, code offset 0x0
#
Risposta accettata:
Prova a eseguire il comando fdisk -l <img file>
. In genere se il .img
i file sono interi dischi, ad esempio, da una macchina virtuale KVM, quindi tecnicamente sono un disco virtuale.
Esempio
Ho una VM KVM CentOS che si presenta in questo modo con il file
comando:
$ 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
Esecuzione di fdisk
con esso:
$ 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)
Se desideri montare una di queste partizioni, puoi farlo come segue:
fdisk (uscita cilindro)
- dimensione del blocco di 512 byte e il blocco iniziale è 63.
- L'offset è 512 * 63 =32256.
fdisk (output di settore)
- dimensione del blocco di 512 byte e il blocco iniziale è 1.
- L'offset è 512 * 1 =512.
Quindi il comando mount sarebbe:
in cilindri
$ mount -o loop,offset=32256 centostest.img /mnt/tmp
Per montare l'altra partizione (512 * 208845 =106928640):
$ mount -o loop,offset=106928640 centostest.img /mnt/tmp
in settori
$ mount -o loop,offset=512 centostest.img /mnt/tmp
Per montare l'altra partizione (512 * 14 =7168):
$ mount -o loop,offset=7168 centostest.img /mnt/tmp
NOTA
Funzionerà solo se mount può determinare il tipo di filesystem all'interno della "partizione" che stai tentando di montare. Potrebbe essere necessario includere -t auto
oppure sii specifico e comunica a mount
ecco -t ext4
per esempio.
Riferimenti
- come montare il file .img