Qual formato de arquivo começa com "45 52 02" bytes?


33

Eu tenho o .cdrformato de arquivo (não o arquivo CorelDRAW ), mas tenho problemas para abri-lo / gravá-lo. Eu espero que seja a imagem do disco. Aqui estão as primeiras linhas:

$ hexdump -C *.cdr | head
00000000  45 52 02 00 00 70 00 00  00 00 00 00 00 00 00 00  |ER...p..........|
00000010  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00000200  ...
$ hdiutil imageinfo *.cdr
hdiutil: imageinfo failed - image not recognized

Em que tipo de formato é esse arquivo?

Verifiquei o artigo sobre números mágicos em arquivos na Wikipedia, mas não está listado lá.


1
Pode muito bem ser uma imagem de disco: .CDR é uma imagem de disco criada em um computador Macintosh usando o programa Disk Utility interno; pode conter várias pastas e arquivos em um único arquivo de imagem de disco que pode ser gravado em um CD; semelhante a um arquivo .ISO criado em um computador com Windows.
Keltari

19
O filecomando é feito especificamente para reconhecer os tipos de arquivo, observando os bytes mágicos.
Daniel B

Se for uma imagem de disco, os .cdrarquivos podem ser renomeados .isoe reconhecidos como uma imagem de CD-ROM ISO9660.
Thorbjørn Ravn Andersen

3
.cdr é usado quando se cria um mestre CD / DVD e usa o ISO9660 padrão / .dmg é usado para armazenar / distribuem OSX software / dados, e podem ser compactados e criptografados
Giovanni Valerio

1
Nem todos os arquivos de imagem de CD-ROM será formato .iso ....
rackandboneman

Respostas:


20

Bem, eu não estou 100% nisso, mas parece estar próximo a um arquivo de imagem de disco do Roxio Toast, de acordo com a lista de assinaturas de arquivos encontrada aqui na Wikipedia :

Arquivo de imagem de disco Roxio Toast, também alguns arquivos .dmg começam com os mesmos bytes.

A assinatura hexadecimal, desde que:

45 52 02 00 00 00

E a assinatura hexadecimal que você está compartilhando é:

45 52 02 00 00 70

Observe que o último valor hexadecimal é em 00vez de, 70portanto, isso é ainda mais estranho. Gostaria de saber se a 70imagem está compactada? Informações semelhantes parecem ser encontradas neste arquivo de definições parapyfsig ; uma biblioteca de assinaturas de arquivos Python.

Além disso, se bem me lembro, a .cdrextensão do seu arquivo parece indicar que esse arquivo de imagem de disco foi criado com o Roxio Toast.

E o FWIW, arquivos com a .dmgextensão - como mencionado na página da Wikipedia - são imagens no formato macOS "Apple Disk Image" .


3
Eu não tenho certeza, mas pode estar relacionada com uma ligeira discrepância na assinatura hex você usou - isto é: 45 52 02 00 00 00, enquanto a assinatura do OP é realmente: 45 52 02 00 00 70.
Jd1

2
@ jrd1 Excelente ponto! Vou ver se eu posso pesquisar isso um pouco mais.
JakeGould

58

O filecomando diz que é um "Apple Driver Map, blocksize 512":

printf '\x45\x52\x02\x00\x00\x70' | file -
# /dev/stdin: Apple Driver Map, blocksize 512

A definição está em código fonte do arquivo no arquivo magic/Magdir/apple.

Curiosamente, há uma entrada desativada que corresponderia ainda melhor: "Dados da partição da Apple".


17
Agora esta é uma ótima resposta! Ele pode ser transformado em uma linha como essa printf '\x45\x52\x02\x00\x00\x70' - | file -e a saída seria /dev/stdin: Apple Driver Map, blocksize 512.
precisa saber é o seguinte

Obrigado! Especialmente por perceber que o meu sugerido printf '\x45\x52\x02\x00\x00\x70' - | file -tem um desnecessário -antes do tubo |.
JakeGould

11
O OP deve ser executado fileno arquivo real. Pode ter uma resposta diferente, dada a coisa toda.
Pare de prejudicar Monica
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.