Linux set bootflag?

2

Ok, então eu estraguei meu MBR e preciso definir o sinalizador de inicialização ( não a partição ativa! ). Eu pesquisei por questões semelhantes, mas todas as respostas que vejo são "como definir uma partição como ativa", e não é isso que quero fazer. Configurá-lo para ativo diz ao bootloader para carregá-lo, mas não diz ao BIOS para executar os primeiros 512 bytes. O que eu preciso é que a última palavra do MBR seja 0xAA55. Por favor me ajude com isso, obrigado.

    
por Grunt 07.07.2013 / 10:49

1 resposta

2

Em um disco MBR, o "sinalizador de inicialização" e o "sinalizador ativo" são a mesma coisa . Este sinalizador não deve importar para o firmware, embora alguns procure antes de inicializar um disco no modo BIOS. Alguns (mas não todos) carregadores de inicialização no modo BIOS dependem do sinalizador presente; eles procuram e transferem o controle para o setor de inicialização da partição que é tão marcada.

Em um disco GPT, as ferramentas baseadas na libparted (como parted e GParted) identificam a Partição do sistema EFI (ESP) como tendo o "sinalizador de inicialização" definido. Apesar de usar o mesmo nome de uma construção do MBR, o que a libparted identifica como "sinalizador de inicialização" no GPT não tem nada a ver com um sinalizador de inicialização / ativação do MBR.

O código 0xAA55 no final do primeiro setor do disco simplesmente identifica o setor como mantendo uma tabela de partição MBR. (Os discos GPT também têm esse código, pois parte da especificação GPT inclui um "MBR protetor" projetado para evitar que utilitários não compatíveis com GPT mexam no disco.) Se fdisk , parted e outras ferramentas de particionamento MBR reconhecem o disco, esse código já está presente. Se não estiver presente, as ferramentas de particionamento reclamarão ou alegarão que o disco não está particionado.

Se você ainda tiver problemas depois de ler esta resposta, precisará fornecer mais informações: O que exatamente não está funcionando no seu computador? Como dito, sua pergunta é bem abstrata. Além disso, a saída de parted /dev/sda print (digitada como root ou precedida por sudo ) seria útil.

    
por 08.07.2013 / 04:57