Não é possível montar a imagem do disco

1

Eu tenho um arquivo de imagem de disco que estou tentando montar localmente usando um dispositivo de loop. Usando parted eu posso ver que a imagem tem duas partições, no entanto, eu não sou capaz de montar a primeira partição e losetup acha que a segunda partição não existe. Alguém sabe como eu posso montar a segunda partição?

/m/sf_VMShare ❯❯❯ sudo losetup /dev/loop0 ./imm_image-2017-05-28.img
/m/sf_VMShare ❯❯❯ sudo losetup -a
/dev/loop0: [0023]:99 (/media/sf_VMShare/imm_image-2017-05-28.img)
/m/sf_VMShare ❯❯❯ sudo parted /dev/loop0 print
Model: Loopback device (loop)
Disk /dev/loop0: 1206MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size   Type     File system  Flags
 1      10.5MB  360MB   349MB  primary  ext4
 2      361MB   1205MB  844MB  primary  ext4

/m/sf_VMShare ❯❯❯ sudo mount -t ext4 /dev/loop0p2 /tmp/vdisk
mount: special device /dev/loop0p2 does not exist
/m/sf_VMShare ❯❯❯ sudo mount -t ext4 /dev/loop0p1 /tmp/vdisk 
mount: wrong fs type, bad option, bad superblock on /dev/loop0p1,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

/m/sf_VMShare ❯❯❯ mount | grep /tmp/vdisk
/m/sf_VMShare ❯❯❯
/m/sf_VMShare ❯❯❯ ls /dev/loop*
/dev/loop0    /dev/loop1  /dev/loop3  /dev/loop5  /dev/loop7
/dev/loop0p1  /dev/loop2  /dev/loop4  /dev/loop6  /dev/loop-control
/m/sf_VMShare ❯❯❯ lsblk -f
NAME      FSTYPE LABEL MOUNTPOINT
sda                    
├─sda1                 /
├─sda2                 
└─sda5                 [SWAP]
sdb                    
└─sdb1                 /home/foo/workspace
sr0                    
loop0                  
└─loop0p1              
    
por dangeroushobo 19.06.2017 / 19:28

1 resposta

3

Como montar uma partição em uma imagem de disco completa que contenha uma tabela de partições msdos.

Ferramentas:

  • fdisk
  • mount
  • calculadora

Obtenha o layout da partição da imagem.

sudo fdisk -l -u=sectors /work/loop_test/disk_image.img

Exemplo de saída:

Disk /work/loop_test/disk_image.img: 29 MB, 29629952 bytes
255 heads, 63 sectors/track, 3 cylinders, total 57871 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: 0x0009d7e5

                     Device Boot      Start         End      Blocks   Id  System
/work/loop_test/disk_image.img1       2048       18431        8192   83  Linux
/work/loop_test/disk_image.img2       18432      57343       19456    7  HPFS/NTFS/exFAT

Calcule o deslocamento desde o início da imagem até o início da partição. Neste caso, a partição ntfs.

fórmula:

Sector size * Start = Offset
512 * 18432 = 9437184

Monte a imagem, passando o deslocamento para a partição desejada.

Neste exemplo, a partição ntfs.

sudo mount -o loop,offset=9437184 /work/loop_test/disk_image.img /mnt/ntfs_partition
    
por 19.06.2017 / 21:20