Criando um ISO de MBR + X quantidades de partições

2

Eu estou tentando fazer um ISO de um disco de backup do Windows que eu "queimei" no meu cartão microSD, o que eu fiz em desespero devido à falta de armazenamento HDD no momento. Agora eu quero tirá-lo de lá e voltar para o HDD como um arquivo ISO, em vez de uma partição como era originalmente.

Eu tentei fazer o que acho que deveria ser suficiente, mas tem duvidado porque o Windows está me dizendo que o ISO está corrompido. Então, o que eu fiz:

Primeiro eu fiz muitos cálculos, adicionando somas e o que quer que fosse para obter o setor final, mas depois percebi que posso apenas pegar o setor executando fdisk e obtendo o setor final da partição que eu quero, que é 1 neste caso, e adicionar 1, para obter esse índice desde que eu li em algum lugar que é necessário (tentou sem muito bem, mas falhou, portanto, olhando-se):

[~]: sudo fdisk /dev/sdc
[sudo] password for simon: 

Welcome to fdisk (util-linux 2.26.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Command (m for help): p
Disk /dev/sdc: 29.8 GiB, 32009355264 bytes, 62518272 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
Disklabel type: dos
Disk identifier: 0x1e6e3d4a

Device     Boot Start      End  Sectors  Size Id Type
/dev/sdc1  *     2048 25671679 25669632 12.2G  c W95 FAT32 (LBA)

Command (m for help): 

A partição começa em 2048 e termina em 25671679 , o que me dá a contagem para que dd seja 25671680 . Meu comando dd será então, dado um tamanho de setor de 512 (também dado acima):

[img]: sudo dd if=/dev/sdc of=WindowsBackupDisk.iso bs=512 count=25671680
25671680+0 records in
25671680+0 records out
13143900160 bytes (13 GB) copied, 158.92 s, 82.7 MB/s

A execução deste comando deve fornecer um arquivo com o tamanho da soma da partição e do MBR . Se eu tivesse mais partições, eu teria usado o setor final do último que eu queria incluir, certo?

Eu queria fazer isso porque eu tenho isso em um cartão microSD de 32GB que eu gostaria de usar para outra coisa. No entanto, ao entrar no Windows, eu tento montá-lo para verificar sua integridade, mas não funciona. Isso ocorre porque o Windows não pode ler o formato de um ISO bruto como este ou é porque está corrompido?

A execução do arquivo no ISO me dá:

[img]: file WindowsBackupDisk.iso 
WindowsBackupDisk.iso: DOS/MBR boot sector MS-MBR Windows 7 english at 
offset 0x163 "Invalid partition table" at offset 0x17b "Error loading 
operating system" at offset 0x19a "Missing operating system", disk 
signature 0x1e6e3d4a; partition 1 : ID=0xc, active, start-CHS 
(0x0,32,33), end-CHS (0x3ff,254,63), startsector 2048, 25669632 sectors

O que posso fazer para garantir que seja legível no meu sistema operacional Windows? Eu preferiria não instalar o MagicISO ou tais programas no meu Windows, porque eu pensei que poderia fazê-lo no Linux, mas se é a única solução, então eu gostaria de saber por que assim eu posso tomar isso como uma lição.

Montagem da partição 1:

[img]: sudo mount -o loop,offset=1048576 -t vfat WindowsBackupDisk.iso /mnt/tmp/
[sudo] password for simon: 
[img]: ls /mnt/tmp/
boot  bootmgr  bootmgr.efi  efi  reagent.xml  sources  System Volume Information
    
por Simon 23.05.2015 / 11:56

0 respostas

Tags