Como faço para encontrar / alterar onde o GRUB 2 é instalado em uma reescrita, no Debian Wheezy?

2

Eu tenho um sistema Debian Wheezy. Em uma atualização recente, recebi uma mensagem de erro do GRUB dizendo que a incorporação não era suportada por sistemas de arquivos ext2 (hein? Nunca vi isso antes.) E depois de cavar o problema parece que eu estava instalando o GRUB em o registro de inicialização de / dev / md0, que é formatado diretamente (sem partições dentro do contêiner MD).

Consegui passar por isso apontando manualmente grub-install no dispositivo de disco bruto (no GRUB parlace, (hd0) ), mas tenho a sensação de que isso surgirá novamente na próxima vez que o GRUB for atualizado.

Isso me levou a começar a procurar onde o local de instalação do GRUB está realmente armazenado no Wheezy. No entanto, o grepping para md0 não resultou em nada interessante.

Daí minha pergunta: No Debian Wheezy especificamente, onde exatamente se define o local de instalação do GRUB? Em outras palavras, se eu quiser mudar minha configuração do GRUB de estar em um registro de inicialização de partição no registro mestre de inicialização, digamos, qual arquivo específico (e configuração dentro desse arquivo) eu preciso alterar?

    
por a CVn 17.04.2015 / 23:56

1 resposta

0

Portanto, o problema é que o grub provavelmente assume isso porque / boot está em / dev / md0 e (hd0) é indicado como / dev / md0 em device.map que o MBR deve continuar em / dev / md0, e então você verá uma mensagem de erro porque / dev / md0 não possui um MBR. A boa notícia é que o MBR original e o bootstrap ainda estão no seu dispositivo de boot (provavelmente / dev / sda), e é por isso que o seu sistema inicializa. Esse código de boot-strap de nível mais baixo muda raramente, portanto, não é um grande problema se não for atualizado. Você pode ter que viver com essa mensagem de erro, no entanto, há algumas coisas que você pode tentar / verificar:

  • verifique se você não tem outra partição de inicialização no dispositivo de inicialização do BIOS, que você simplesmente não consegue ver, porque não está montada. Isso poderia acontecer se o seu / etc / fstab estivesse faltando uma entrada para / boot
    • apareceria como uma partição ext2 ou ext4, provavelmente menos que 500MB.
  • renomear device.map porque o grub2 realmente não precisa dele e pode estar fornecendo informações incorretas para o script de pós-instalação e / ou instalação do grub.
  • então, execute o grub-install / dev / sdX (onde sdX é o seu dispositivo de inicialização real). Isso atualizará o código do MBR e do bootstrap nesse dispositivo, caso esteja desatualizado.
    • se isso não funcionar, você poderia fazer: grub-install --boot-directory = /boot/dev/sdX

Sua configuração é um pouco estranha, mas deve ser suportada ok no grub2. No final, você pode simplesmente ter que viver com a mensagem de erro e executar manualmente o grub-install uma vez por ano.

    
por 18.04.2015 / 15:47