Como posso listar a tabela de partições de uma imagem de disco desmontada?

2

Eu quero preparar Raspbian Jessie encontrado Aqui no cartão SD para Biosignal Pi, instruções encontradas Aqui , mas eu tenho apenas OS X 10.11.3 El Capitan do Macbook Air 2013-mid agora. A imagem está em fstype formato para que não seja compatível com o OS X. Verificando se usando o hash correto openssl sha1 /Users/masi/code/2016-02-26-raspbian-jessie.zip que dá

SHA1(/Users/masi/code/2016-02-26-raspbian-jessie.zip)= 4a841dffd02197548bf2329b90a0a44eeeebb4ab

que é o hash correto encontrado no site, portanto, não arquivo corrompido. No entanto, executar SHA1 no .img retorna SHA1 diferente do que com David

masi$ openssl sha1 2016-02-26-raspbian-jessie.img
SHA1(2016-02-26-raspbian-jessie.img)= da39a3ee5e6b4b0d3255bfef95601890afd80709

Um passo requer que eu liste a tabela de partições de uma imagem de disco desmontada. No Linux eu usaria fdisk -l, mas OS X fdisk image.img

Disk: 2016-02-26-raspbian-jessie.img    geometry: 0/4/63 [0 sectors]
Signature: 0x0
         Starting       Ending
 #: id  cyl  hd sec -  cyl  hd sec [     start -       size]
------------------------------------------------------------------------
 1: 00    0   0   0 -    0   0   0 [         0 -          0] unused      
 2: 00    0   0   0 -    0   0   0 [         0 -          0] unused      
 3: 00    0   0   0 -    0   0   0 [         0 -          0] unused      
 4: 00    0   0   0 -    0   0   0 [         0 -          0] unused   

onde você pode ver que o sistema não reconhece a imagem. Eu tento montar a imagem 2016-02-26-raspbian-jessie.img no aplicativo DiskImageMounter.app, mas recebo

enter image description here

Léo Léopold Hertz 준영
fonte
Então você basicamente quer listar a tabela de partições de um desmontado imagem de disco?
nohillside
1
Como já mencionado, por favor, concentre-se no problema que você está tentando resolver aqui. Apenas adicionar mais detalhes sobre comandos ausentes, etc., não tornará a questão mais clara, já que a abordagem necessária para resolver o problema no OSX pode ser bem diferente do Linux (de onde as instruções parecem vir e que você está tentando seguir).
nohillside
@DavidAnderson O hardware pode estar corrompido. Este dispositivo foi 5 vezes sob garantia da Apple, mas de acordo com a Apple, o dispositivo deve estar ok. Placa-mãe nova, SSD novo e OS X novo. Vou colocar este dispositivo mais uma vez para a Apple, se não podemos descobrir uma razão lógica para a saída.
Léo Léopold Hertz 준영
Você pode querer tentar correr openssl sha1 2016-02-26-raspbian-jessie.img e compare com meus resultados. Além disso, o DiskImageMounter.app não é necessário. (Veja minha atualização 2)
David Anderson

Respostas:

5

Para obter corretamente a tabela de partição de um arquivo de imagem (disco), use:

hdiutil imageinfo /path/to/image

Exemplo:

hdiutil imageinfo /Users/user/Downloads/2016-02-26-raspbian-jessie.img 

Backing Store Information:
    URL: file:///Users/user/Downloads/2016-02-26-raspbian-jessie.img
    Name: 2016-02-26-raspbian-jessie.img
    Class Name: CBSDBackingStore
Class Name: CRawDiskImage
Checksum Type: Ohne
Size Information:
    Total Bytes: 4029677568
    Compressed Ratio: 1
    Sector Count: 7870464
    Total Non-Empty Bytes: 4029677568
    Compressed Bytes: 4029677568
    Total Empty Bytes: 0
Format: RAW*
Format Description: Lesen/Schreiben, reine Daten
Checksum Value: 
Properties:
    Encrypted: false
    Kernel Compatible: true
    Checksummed: false
    Software License Agreement: false
    Partitioned: false
    Compressed: no
Segments:
    0: /Users/user/Downloads/2016-02-26-raspbian-jessie.img
partitions:
    partition-scheme: fdisk
    block-size: 512
    partitions:
        0:
            partition-name: Master Boot Record
            partition-start: 0
            partition-synthesized: true
            partition-length: 1
            partition-hint: MBR
            boot-code: 0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000A83FF60C0000
        1:
            partition-name: 
            partition-start: 1
            partition-synthesized: true
            partition-length: 8191
            partition-hint: Apple_Free
        2:
            partition-start: 8192
            partition-number: 1
            partition-length: 122880
            partition-hint: Windows_FAT_32
            partition-filesystems:
                FAT16: boot
        3:
            partition-start: 131072
            partition-number: 2
            partition-length: 7739392
            partition-hint: Linux_Ext2FS
    burnable: false
Resize limits (per hdiutil resize -limits):
 min     cur     max 
7870464 7870464 393749544

Testado com a imagem original ( shasum -a1 do img montado nunca: 6a9ac027081aa38213ebe1fcf9ed502a6d6ec14e) baixado Aqui .

Isso funciona pelo menos em 10.9.5 Mavericks - 10.11.3 El Capitan.

klanomath
fonte
1
eu recebo hdiutil: imageinfo failed - image not recognized com seu primeiro comando. Você tem algo adicional instalado?
Léo Léopold Hertz 준영
1
@Masi Hmm não tenho nem instalar osxfuse nem drivers Paragon. O Parallels / VMware está instalado.
klanomath
@Masi Você foi capaz de caçar o erro? Você também tentou montar a imagem sem bloqueá-la ou sua RAM / processador / SSD está corrompida. Você recebe algum erro no log do sistema?
klanomath
Não. Eu só sei que algum erro de corrupção na RAM / Processador / SSD durante o processo de descompactação. O SSD é improvável, mas é possível. Quais logs você gostaria de ver?
Léo Léopold Hertz 준영
1
@Masi Você pode procurar no log do sistema por "erro de E / S" (SSD). Erros de RAM / Proc (como invertendo bits) raramente são detectados. Pode também ser um erro de bus. Você tentou montar a img bloqueada (depois de descompactar mais uma vez)?
klanomath
4

Atualização 2

Na verdade, não há necessidade de usar o DiskImageMounter.app. o fdisk comando pode ser usado diretamente no arquivo .img. Em outras palavras, o comando

fdisk 2016-02-26-raspbian-jessie.img

produz os mesmos resultados de quando eu executei fdisk /dev/disk2. Quando eu executo o comando

openssl sha1 2016-02-26-raspbian-jessie.img

Eu obtenho os resultados mostrados abaixo.

SHA1(2016-02-26-raspbian-jessie.img)= 6a9ac027081aa38213ebe1fcf9ed502a6d6ec14e

Eu também tenho um (21,5 polegadas, meados de 2011) iMac executando El Capitan OS X 10.11.3. Os resultados usando este computador são os mesmos.

Note que se o 2016-02-26-raspbian-jessie.img arquivo é montado usando o aplicativo DiskImageMounter.app, o valor hexadecimal produzido por openssl sha1 2016-02-26-raspbian-jessie.img alterar. Isso indicaria que o arquivo de imagem não está montado somente para leitura.

Atualização 1

Desde que eu também tenho o El Capitan OS X 10.11.3 instalado no meu (20 polegadas, meados de 2007) iMac, posso verificar contra a sua máquina. Usando o comando

openssl sha1 2016-02-26-raspbian-jessie.zip

o resultado é

SHA1(2016-02-26-raspbian-jessie.zip)= 4a841dffd02197548bf2329b90a0a44eeeebb4ab

que é o mesmo que seus resultados. O resto é o mesmo mostrado abaixo quando usei o Yosemite.

Resposta Original

Eu estou usando o Yosemite OS X 10.10.5.

Eu baixei 2016-02-26-raspbian-jessie.zip.

Usando o aplicativo Finder, cliquei com o botão direito nesse arquivo e selecionei o arquivo aberto com "Archive Utility.app". Isso criou 2016-02-26-raspbian-jessie.img.

Usando o aplicativo Finder, cliquei com o botão direito 2016-02-26-raspbian-jessie.img e selecionado aberto com DiskImageMounter.app. Isto montado na imagem como /dev/disk2 no meu Mac.

Aqui está o que está no arquivo que você baixou.

Steelhead:~ davidanderson$ fdisk /dev/disk2
Disk: /dev/disk2    geometry: 976/128/63 [7870464 sectors]
Signature: 0xAA55
         Starting       Ending
 #: id  cyl  hd sec -  cyl  hd sec [     start -       size]
------------------------------------------------------------------------
 1: 0C    0 130   3 -    8  40  32 [      8192 -     122880] Win95 FAT32L
 2: 83    8  40  33 -  489 232  63 [    131072 -    7739392] Linux files*
 3: 00    0   0   0 -    0   0   0 [         0 -          0] unused      
 4: 00    0   0   0 -    0   0   0 [         0 -          0] unused      
Steelhead:~ davidanderson$ diskutil list /dev/disk2
/dev/disk2
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *4.0 GB     disk2
   1:             Windows_FAT_32 boot                    62.9 MB    disk2s1
   2:                      Linux                         4.0 GB     disk2s2
Steelhead:~ davidanderson$ 
David Anderson
fonte
Você usou a imagem da imagem completa da área de trabalho encontrada aqui raspberrypi.org/downloads/raspbian ? Hmm, parece ser apenas uma parte do seu sistema.
Léo Léopold Hertz 준영
@Masi: Sim, a imagem completa da área de trabalho baseada no Debian Jessie: 2016-02-26-raspbian-jessie.zip
David Anderson
Eu forneci uma captura de tela sobre o que acontece ao tentar montar com o DiskImageMounter.app. Eu verifiquei o hash e é o mesmo que no site.
Léo Léopold Hertz 준영
Seu .img SHA é diferente do meu. Algo errado ao descompactar o sistema.
Léo Léopold Hertz 준영
1
@Masi: Tente descompactar o arquivo novamente. Eu tentei pelo menos uma dúzia de vezes em dois Macs diferentes, que produziram os mesmos resultados. Além disso, seus resultados postados de fdisk indicaria o início do seu arquivo de imagem contém todos os zeros. Eu usei o aplicativo "Archive Utility.app" para descompactar o arquivo.
David Anderson
0

Você tem que tê-lo na linha de comando? Se não, eu usaria o Utilitário de Disco.

PSDuckie
fonte
Eu atualizei o corpo. Não consegui montar a imagem pelo Utilitário de Disco. Não existe tal recurso como montar o arquivo .img no aplicativo
Léo Léopold Hertz 준영
Ah; Eu não sabia que você estava tentando montar um arquivo .img. Eu pensei que você estava tentando ver todas as partições no sistema. Meu erro.
PSDuckie
0

ATUALIZAR:

O que você está procurando fazer é listar todas as partições de uma imagem de disco que você baixou.

O OS X não montará nenhum sistema de arquivos antigo. Nativamente, ele montará HFS, HFS +, CDFS, FAT 16, FAT32 e ExtFAT e ler / gravar. Ele montará o NTFS como somente leitura.

Qual sistema de arquivos sua imagem usa? Como é baseado no Linux, pode ser o Ext2 / 3/4. Dê uma olhada em fusível-ext2 e fusível-ext4 .

Você pode encontrar mais detalhes aqui: Como posso montar um sistema de arquivos ext4 no OS X?

Depois de instalar os drivers para o sistema de arquivos do Linux, você poderá montar a imagem.

2ª atualização:

Eu quero configurar o sistema Biosignal Pi no cartão SD. Para isso, preciso   prepare o cartão no meu sistema.

Agora que sabemos o que você está tentando fazer, você não precisa montar a imagem, você precisa cópia de para o seu SD.

Basicamente, o que você vai fazer é

  • insira seu cartão SD
  • usar diskutil list para listar todas as unidades / partições para encontrar o cartão SD (será / dev / diskX onde X é algum inteiro). A maneira mais fácil de fazer isso é emitir o comando sem o cartão SD inserido e, em seguida, novamente com ele inserido e comparar a saída. A nova entrada será o seu cartão SD.
  • usar diskutil unmountDisk /dev/diskX para desmontar (não ejetar) o seu cartão SD (assim você pode escrever para ele)

  • usar dd para copiar a imagem do arquivo que você baixou para o SD cartão. Use o comando: use o comando: sudo dd bs=1m if=path_of_your_image.img of=/dev/diskX

  • usar diskutil eject /dev/diskX para ejetar seu cartão SD para que você possa usá-lo Dispositivo de framboesa-Pi.

Este é o "guia rápido" que lhe dá o essencial. Siga estas instruções mais detalhadas fornecidas pela Página de download do Raspberry-Pi para Mac OS X: INSTALANDO IMAGENS DO SISTEMA OPERACIONAL NO MAC OS

Essas instruções são específicas para o arquivo que você está tentando instalar.



Em sua pergunta original, você queria listar todas as partições no OS X, basta usar o CLI para diskutil

$ diskutil list

/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:          Apple_CoreStorage iMacInternalStorage     999.3 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
/dev/disk1 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *121.3 GB   disk1
   1:                        EFI EFI                     209.7 MB   disk1s1
   2:          Apple_CoreStorage iMacInternalStorage     121.0 GB   disk1s2
   3:                 Apple_Boot Boot OS X               134.2 MB   disk1s3
/dev/disk2 (internal, virtual):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                  Apple_HFS iMac HD                +1.1 TB     disk2
                                 Logical Volume on disk0s2, disk1s2
                                 7A85AA25-03A0-4C4B-91F5-533D962DCFA1
                                 Unencrypted
Allan
fonte
Eu tenho apenas uma imagem, ou seja, 2016-02-26-raspbian-jessie.img. Como você pode usar seu método com isso? Não consegui montar a imagem no sistema por algum motivo. Eu atualizarei o corpo.
Léo Léopold Hertz 준영
1
Esta resposta está simplesmente errada. Você não precisa de nenhum driver de sistema de arquivos (por exemplo, hfs + ou ext4) para ler uma tabela de partição de um disco.
klanomath
1
@klanomath - Se é uma imagem escrita em um fstype não compatível com o OS X ele faz. Ele não pode lê-lo agora, de modo que praticamente joga seu argumento por uma janela. Em segundo lugar, eu tenho um dual boot X Serve com OS X e sistema de arquivos FreeBSD UFS. OS X não pode ver as várias partições UFS. Não consigo ler, ponto final.
Allan
1
@ Allan Basta verificar minha resposta. Todas as partições estão listadas!
klanomath
1
@klanomath então você tem algo adicional instalado porque eu não posso e ele não pode
Allan