Como você descompacta um .bin
arquivo contendo um DOS/MBR Boot Sector e outro sistema de arquivos não detectado. Eu binwalk
o executei e ele me mostrou os locais (estimados) dos dados e seus tipos. A saída file
é:
chromeos_15393.58.0_reven_recovery_stable-channel_mp-v2.bin: DOS/MBR boot sector; partition 1 : ID=0xc, active, start-CHS (0x16,176,27), end-CHS (0x1e,216,58), startsector 364544, 131072 sectors; partition 2 : ID=0xee, start-CHS (0x0,0,2), end-CHS (0x0,0,2), startsector 1, 1 sectors
A partir dessas informações, eu sabia que havia um Boot Sector no começo, mas onde estão os arquivos da Imagem e como posso obtê-los? Para sua informação, é ChromeOS baseado em Android (e Android é baseado em Linux), o ZIP que contém o .bin
está localizado aqui . Eu dd
editei a Imagem de Disco para um USB e estou usando-a de lá.
Eu tentei gdisk
e esse foi o resultado:
GPT fdisk (gdisk) version 1.0.10
Caution! After loading partitions, the CRC doesn't check out!
Warning! Main partition table CRC mismatch! Loaded backup partition table
instead of main partition table!
Warning! One or more CRCs don't match. You should repair the disk!
Main header: OK
Backup header: OK
Main partition table: ERROR
Backup partition table: OK
Partition table scan:
MBR: hybrid
BSD: not present
APM: not present
GPT: damaged
Found valid MBR and corrupt GPT. Which do you want to use? (Using the
GPT MAY permit recovery of GPT data.)
1 - MBR
2 - GPT
3 - Create blank GPT
Your answer: 2
Disk /dev/sdb: 61341696 sectors, 29.3 GiB
Model: Cruzer Blade
Sector size (logical/physical): 512/512 bytes
Disk identifier (GUID): 1F1C043E-3E55-B14D-94F1-3962AC2C5E25
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 13815959
Partitions will be aligned on 1-sector boundaries
Total free space is 266217 sectors (130.0 MiB)
Number Start (sector) End (sector) Size Code Name
1 5414912 13815944 4.0 GiB 8300 STATE
2 69 32836 16.0 MiB 7F00 KERN-A
3 499712 5414911 2.3 GiB 7F01 ROOT-A
4 32837 65604 16.0 MiB 7F00 KERN-B
5 495616 499711 2.0 MiB 7F01 ROOT-B
6 65 65 512 bytes 7F00 KERN-C
7 66 66 512 bytes 7F01 ROOT-C
8 331776 364543 16.0 MiB 8300 OEM
9 67 67 512 bytes 7F02 reserved
10 68 68 512 bytes 7F02 reserved
11 64 64 512 bytes 7F03 RWFW
12 364544 495615 64.0 MiB EF00 EFI-SYSTEM
Quando vi o "GPT corrompido", fiquei confuso. Não pode ser que esteja corrompido. E para ser totalmente honesto, os nomes das áreas fariam sentido para uma instalação Linux (por exemplo, EFI-SYSTEM, KERN-A).
Na minha experiência, há duas maneiras interessantes de explorar uma imagem como essa no Linux.
Uma delas é extrair as partições individuais usando
7z
e, em seguida, processar cada partição individualmente conforme apropriado:extrai cada partição para um arquivo diferente (com uma opção para renomear automaticamente em caso de conflitos de nomenclatura); uma vez feito isso, cada arquivo de partição pode ser montado usando
A outra é usar o suporte interno do Linux para partições em dispositivos de loop:
Isso resultará em um dispositivo de loop por partição, normalmente
/dev/loop0p1
,/dev/loop0p2
etc. além do dispositivo de loop principal,/dev/loop0
. Cada partição pode ser montada como de costume:Para limpar, desmonte as partições montadas e, se você usou
losetup
, remova o dispositivo de loop comlosetup -d
.