Eu gostaria de montar um despejo bruto de um disco, por exemplo, como aqueles criados por dd
? Existe algo como um dispositivo de loop no OS X?
Eu gostaria de montar um despejo bruto de um disco, por exemplo, como aqueles criados por dd
? Existe algo como um dispositivo de loop no OS X?
Respostas:
Para aqueles que encontram o mesmo problema:
hdiutil attach -imagekey diskimage-class=CRawDiskImage -nomount filename
depois monte-o como quiser.
Isso é engraçado porque é realmente muito simples. Renomeie-o para uma extensão .dmg, pois um DMG também é uma imagem bruta.
Em contraste com a solução acima, isso funcionará em rasgos dd de unidades inteiras, além de partições.
O hdiutil
comando fornecido acima está correto, no entanto, os SSDs do Mac mais novos têm um tamanho de bloco de 4096 bytes e o hdiutil
padrão é 512 para imagens de disco. Portanto, se você tentar montar uma imagem de tamanho de bloco de 4096 bytes, isso parecerá um absurdo para o sistema.
A adição -blocksize 4096
ao comando permitirá que você trabalhe com uma imagem criada a partir de um Mac mais recente:
hdiutil attach -blocksize 4096 -noverify -nomount diskimage.img
Você pode criar uma imagem de disco usando o Utilitário de Disco. Selecione o disco ou a partição do disco na lista à esquerda e, em seguida, Arquivo → Novo → Imagem do disco em <disco1>.
Depois que a imagem é criada, você pode montá-la como qualquer outro volume e, se você selecionou ler / gravar, pode ler / gravar na imagem como um volume montado. A imagem é montada no mesmo local que o disco original seria: / Volumes / diskname.
mount
-lo.
dd
por exemplo. Eu quero montar isso. Eu poderia criar um dmg e dd
a imagem bruta nele e montar esse dmg, mas gostaria de montá-lo diretamente, algo assim mount -t hfs <path-to-file-created-using-dd> /mountpoint
. No entanto, isso não é possível, pois mount
só funciona com dispositivos, não com arquivos comuns. No Linux, eu usava dispositivos de loop, apontando-os para o arquivo e os utilizando mount
posteriormente.