Por que o dd não é um comando confiável para gravar arquivos .iso inicializáveis ​​no pen drive USB?

19

Uma resposta aqui indica que .isonão é esperado que o Ubuntu seja inicializado se copiado ddpara um pen drive USB.

Por que algumas distribuições Linux têm a opção de gravar diretamente seu .isoarquivo inicializável em um pen drive dd, mas outras (Ubuntu?) Não?

No Ubuntu, acho que deve ser convertido para o .imgprimeiro. Isso é verdade?

É por alguma diferença arquitetônica em .isos? Ou é devido a alguma limitação em ddsi?

Não sei se está fora de tópico aqui. Eu posso movê-lo para um lugar mais adequado, se a comunidade pensa ou sugere um. Alguma explicação seria apreciável.

Samik
fonte
11
Esse costumava ser o caso dos ISOs do Ubuntu, mas a partir da 11.10, eles eram compatíveis com dd, por assim dizer.
mikewhatever
@mikewhatever Obrigado pela informação. Infelizmente eu estava tentando fazer isso 11.04 iso.
Samik 13/06/12

Respostas:

32

Com o Ubuntu 12.04, é possível ddo arquivo .iso em um disco para criar um disco inicializável. Ele funciona apenas com alguns isos (incluindo o Ubuntu 12.04, mas não nas versões anteriores do Ubuntu) porque a inicialização a partir do CD e a partir do disco são tratadas de maneira diferente nos sistemas baseados no BIOS.

Entre outras coisas, para que um disco rígido seja inicializável, ele deve conter código de inicialização no primeiro setor ; para que um CD seja inicializável, ele deve conter código de inicialização " no setor 11 (17 decimal) na última sessão do CD ", de acordo com a especificação El Torito . Como o código de inicialização, pelo menos a parte inicial carregada pelo BIOS, é armazenado em locais diferentes para CDs e unidades de disco rígido, uma imagem de disco pode ter código de inicialização nos dois locais, para que o carregador de inicialização seja carregado se a imagem for inicializada como disco rígido. drive ou como um CD.

A maioria dos arquivos iso é projetada apenas para ser inicializável como CDs e, portanto, eles não contêm código de inicialização no primeiro setor da imagem e, portanto, um disco rígido que contém essa imagem não terá código de inicialização no primeiro setor e não será inicializável.

Jordan Uggla
fonte
Essa é a explicação que eu estava procurando. Obrigado por reservar um tempo para explicar isso. Seria um pouco mais agradável ver alguns links, mas a pergunta foi respondida. Então é isso que o UNetbootin faz, copiando o código do gerenciador de inicialização do setor 17 para o primeiro setor do pen drive, certo?
Samik
3
Não, não é tão simples quanto copiar o código de inicialização. Mesmo se isso fosse possível, seria necessário limpar o dispositivo inteiro (como usar o dd), o que seria inaceitável para a maioria dos usuários do Unetbootin. Em vez disso, o Unetbootin "baixa e extrai um arquivo ISO para a sua unidade USB, gera um arquivo de configuração syslinux apropriado e torna sua unidade USB inicializável usando o syslinux". unetbootin.sourceforge.net/#faq
Jordan Uggla
+1 para a especificação El Torito. E obrigado pela explicação acima. :)
Samik
0

ISOs atuais do Ubuntu são dd ativáveis ​​e já existem há algum tempo. Eles são ISOs "híbridos": eles têm um setor de inicialização MBR. Usar ddcorretamente criará uma unidade USB totalmente inicializável.

O artigo citado, btw, tem apenas uma resposta alegando que os ISOs do Ubuntu não são ddativáveis, e isso não é verdade.

Por favor, veja minha resposta aqui: Como converter um ISO iso9660 em um ISO USB

Esta resposta fornece uma maneira de determinar se um iso é hibridizado (você pode verificar isso para ISOs do Ubuntu), como hibridá-lo se não for (para outros casos) e como usá-lo corretamente ddpara criar uma unidade inicializável.

busca
fonte
-3

Observações que não têm alterações na solução aceita postada acima.

A questão foi colocada como iso confiável e inicializável e usando o dd.

Na maioria dos casos, os usuários do Linux usam a frase iso para significar uma imagem especial de um disco óptico. Inicializável nesse caso pode ser um dos poucos métodos que o BIOS ou o Uefi entende e permite executar a partir do disco óptico.

O dd é geralmente considerado confiável, no entanto, pode falhar por muitas razões por si só e não tem nada a ver com a fonte ou a saída. Na maioria dos casos, parece falhar apenas porque não pergunta "Tem certeza de que deseja apagar isso?"

Os computadores modernos tendem a ver um usb como um disco rígido interno real.

Pode-se usar uma ferramenta como 7z também para copiar alguns iso's para uma unidade flash fat32.

Isso tudo pressupõe algum hardware moderno e uma unidade flash USB moderna.

No futuro, teremos que criar mídia inicializável uefi na maioria dos casos.

jefro0
fonte