GRUB4DOS no MBR

Costumava usar o bootlace64.com para instalar o código de inicialização do GRUB4DOS no MBR. Contudo, com o dd dá para conseguir o mesmo resultado. Pegando o post anterior como exemplo:

# dd if=grub4dos-0.4.6a/grldr.mbr of=/dev/sdx bs=440 count=1 conv=fsync,notrunc

Copia os primeiros 440 bytes (bs=440 count=1) do arquivo grub4dos-0.4.6a/grldr.mbr para o início do dispositivo /dev/sdx. Os demais 72 bytes (offset 0x01b8 até 0x01ff) do MBR não devem ser alterados: são criados durante o particionamento.

# dd if=grub4dos-0.4.6a/grldr.mbr of=/dev/sdx bs=512 skip=1 seek=1 conv=fsync,notrunc

Copia o resto do código para o espaço não usado antes da primeira partição. Pula os primeiros 512 bytes (bs=512) do arquivo (skip=1) e do dispositivo (seek=1). Dali para frente, escreve o restante do arquivo no disco.

Agora é só copiar grub4dos-0.4.6a/grldr para a raiz do sistema de arquivos e criar, igualmente na raiz, o menu.lst de sua preferência.

A parte conv=fsync,notrunc está explicada no post Precisa de sync ao escrever diretamente em dispositivos de bloco?.

Apesar de UEFI ser cada vez mais popular, há muitas máquinas com BIOS na praça. Bootloaders que as suportem são úteis ainda.

Comentários