28
nov

GRUB no Fedora, que dor de cabeça!

Recebeu um GRUB no canto da tela e não consegue bootar? Ou está passando por isso:Tux100

grub-install /dev/XXX
/dev/XXX has no corresponding BIOS drive

???

Hoje passei, mais uma vez, horas brigando com o GRUB. É o tipo de coisa que não entendo sobre o Fedora. O GRUB sempre me causa problemas em recuperações de Servidores e Desktops. Alguém sabe por que a versão do Fedora é tão incompetente? A do Ubuntu parece ser muito mais “esperta”, principalmente quando se trata de mais de um HD.

Recebi o servidor de um cliente no escritório hoje. Ele havia corrompido a partição de boot do XEN Hypervisor, por causa de quedas constantes de energia que nem o nobreak aguentou. Apenas a partição do sistema foi corrompida, a de dados ficou intacta. Tudo é espelhado via SATA RAID da placa-mãe de um HP DC5750 AMD64x2 3800+.

Depois de fazer e verificar os devidos backups, foi hora de formatar o servidor XEN, aproveitando para fazer um upgrade do Fedora7 para o Fedora8. E começou a saga…


  1. Formatei tudo, menos a partição de dados e nem pensei em formatar a partição de boot. O servidor ficou com o grub do Fedora7 e suas configurações! Como pode? O boot rescue do Fedora8 e 7 não ajudaram.
  2. Formatei novamente, desta vez removendo a partição /boot e deixando apenas swap + o /. Ao iniciar o servidor, surpresa: tela preta apenas com um “GRUB” no canto superior esquerdo.
  3. La vou eu bootar no CD de instalação usando a opção “rescue” na linha do boot. Ele monta tudo certinho, reconhece a instalação e me deixa fazer o famoso chroot /mnt/sysimage.
  4. Logicamente fui direto ao assunto, que sempre foi muito mistorioso para mim, mesmo com vasta experiência des do Redhat 7.3 e Google searching. Digitei grub-install e recebi outra famosa mensagem que me deixa irado até hoje e abismado de não terem evoluído desdo FedoraCore 1 e nem nos suportes via forum, FAQ, Wikis e KBs espalhadas pela internet. Acho muitos casos semelhantes mas NUNCA uma solução:
    grub-install /dev/XXX
    /dev/XXX has no corresponding BIOS drive
  5. No lugar do XXX eu tentei os HD individuais do espelho (/dev/sda e /dev/sdb) e também o /dev/mapper/pdc_iahigb que é o drive resultante do RAID1 da controladora SATA. Tentei até um HD extra que é o /dev/sdc, configurado como JBOD na controladora RAID. Sempre a mesma resposta. Detalhe, que eu saiba a BIOS deixou de cadastrar HDs desde a época do PC-AT, logo depois do PC-XT (em 1988), por isso ainda não entendo esta mensagem.

Então esqueça o grub-install e preste atenção nestas dicas que aprendi da maneira mais difícil: quebrando a cabeça.

  1. Se você recebe alguma mensagem de GRUB ao bootar, quer dizer que o MBR está lá e você está conseguindo bootar no seu drive. Outras coisas podem estar erradas.
  2. Verifique o /boot/grub/device.map os Fedora escolhem ordens estranhas para os drives, não sei porque. Eis o meu exemplo antes:
    1. [root@xen64 grub]# cat device.map
      # this device map was generated by anaconda
      (hd1) /dev/mapper/pdc_iahigb
      (hd0) /dev/sdc
  3. E depois que eu alterei, e faz mais sentido, pois assim está a ordem de boot na BIOS:
    1. [root@xen64 grub]# cat device.map
      # this device map was generated by ALROGER
      (hd0) /dev/mapper/pdc_iahigb
      (hd1) /dev/sdc
  4. Não, você não pode usar aqui /dev/sda e /dev/sdb enquanto eles estão sendo usados pela controladora RAID para fazer o devido RAID1 (espelhamento).
  5. Agora verifique seu /boot/grug/menu.lst (famoso grub.conf), veja meu exemplo:
    1. default=0
      timeout=5
      title Fedora (2.6.21-2950.fc8xen)
      root (hd0,0)
      kernel /boot/xen.gz-2.6.21-2950.fc8
      module /boot/vmlinuz-2.6.21-2950.fc8xen ro root=/dev/mapper/pdc_iahigbp1
      module /boot/initrd-2.6.21-2950.fc8xen.img
  6. Observe que alterei a linha do root, que estava como (hd1,0) e também troquei o root=LABEL=/ para root=/aDeviceQueInteressa. Esses labels, a meu ver, só nos confundem, e imagine quando juntamos 2 servidores ou HDs com os mesmos labels…. a dor de cabeça é maior ainda.

Jóia! Tudo configurado corretamente! Mas mesmo assim o grub-install não quer saber de ajudar. Então a dica final: use apenas “grub” e na sua linha de comando (ele é um shell):

  1. root (hd0,0)
  2. setup (hd0)

Simples? Pois é. A primeir linha define o local do seu root (/) como sendo a primeira partição do primeiro HD. A segunda linha, pura e simplesmente, sem mais perguntas, GRAVA o boot do grub!

ATENÇÃO: Apesar de todos os mistérios do Fedora, continuo afirmando que é o mais rápido e confiável sistema operacional Linux, e continuo usando e recomendando em todos os servidores que implemento.

Única referência que vale citar:

Alroger Filho

2 Responses to “GRUB no Fedora, que dor de cabeça!”

  1. 1
    Dorival Says:

    Estranho, nunca tive este problema no Fedora, mas no Ubuntu já ouvi reclamações !!!

  2. 2
    Dorival Says:

    Parabéns pelo trabalho, tudo muito organizado aqui !!! Parabéns !!!

© 2024 Cafe TI – pra perder o sono. | [RSS] Artigos and [RSS] Comentários

Design by Web4 Sudoku - Powered By Wordpress