Como montar um .img como disco rígido?

3

Estou tentando instalar o ChromiumOS da versão do Vanilla. Para instalar no disco rígido, é recomendável apenas dd para uma unidade flash e copiar os arquivos da unidade flash finalizada para partições idênticas que você mesmo criou. Mas, se eu pudesse de alguma forma enganar o Ubuntu para reconhecer um arquivo .img como um dispositivo de bloco real ou abri-lo com GParted, eu poderia usar a cópia de partição do GParted para ficar em um espaço vazio em uma partição estendida e inicializá-lo do disco rígido sem para fazer a cópia do flash drive intermediário.

Isso é possível? (edit: esta é uma imagem de disco inteiro)

    
por WindowsEscapist 27.11.2012 / 18:49

1 resposta

5

Sim, mas existem muitos tipos de arquivos "img". Para os propósitos desta discussão, presumiremos que seu arquivo de imagem contém blocos de disco brutos , que é o que o dd faz.

Um tipo de arquivo img contém uma imagem inteira do disco rígido . Outro tipo contém uma imagem partição .

O conceito geral de um arquivo .img criado via dd é que ele contém os blocos de disco que compõem o disco rígido (ou respectivamente, a partição). A diferença é esta:

Se o arquivo img for para um disco rígido inteiro , ele conterá:

  • A tabela de partições (seja GPT, MBR ou outra coisa).
  • O setor de inicialização, se houver.
  • Todas as partições para o disco rígido, cada uma respeitando o layout / formato da tabela de partições e contendo dados específicos do sistema de arquivos.

Se o arquivo img for para uma partição , ele conterá apenas dados de uma partição sem nenhum dado "contêiner" da tabela de partições.

Pense em todo o disco rígido como uma laranja ou grapefruit cortada no meio. Você tem essas pequenas paredes construídas em torno das seções laranja das frutas.

A tabela de partições cria essas pequenas paredes, e os dados do sistema de arquivos são a própria fruta suculenta laranja.

Parece que seu arquivo img é provavelmente um disco rígido inteiro, então ele contém uma tabela de partições.

O que você fará é executar o comando losetup para "mapear" seu arquivo img em um dispositivo de bloco de loopback. Isso traduz o seu arquivo, que é apenas um arquivo normal contendo dados binários, em um dispositivo de bloco no qual o kernel pode fazer uma E / S parecida com um disco.

O nó do dispositivo de loopback escolhido, por exemplo, /dev/loop3 , pode ser considerado como equivalente em termos de funcionalidade a /dev/sda (o disco rígido inteiro) se sua img for um disco rígido inteiro. Se o seu img é apenas uma partição, então o dispositivo de loop pode ser considerado como equivalente em termos de funcionalidade para /dev/sda1 (apenas uma partição).

Se for o disco rígido inteiro, você poderá executar ferramentas como gparted , palimpsest , cfdisk etc. para:

  • Identifique o tipo de tabela de partições
  • Determine onde estão as partições, seu tamanho e seu tipo de sistema de arquivos
  • Monte as partições individuais para modificá-las

Se for apenas uma partição, você poderá executar o comando mount diretamente no dispositivo de loopback, por exemplo, mount /dev/loop3 /mnt/part .

O losetup (8) manpage . Aprenda a ler manpages; Eu não vou te dar a sintaxe exata para digitar na linha de comando, porque depende da configuração do seu sistema.

    
por 27.11.2012 / 19:28