A pedido do
pinduvoz vou deixar aqui uma forma que uso para recuperar o GRUB usando o LiveCD. Aqui em casa tenho problemas com o GRUB sempre que atualizo o kernel ou faço uma instalação (que é raro, uma vez para o
Dapper e uma para o
Feisty). Isto é um apanhado de vários sites visitados quando fui instalar o
Dapper nesta máquina pela primeira vez, e infelizmente não me recordo das fontes.
Você precisará para isto:
- Um LiveCD do Ubuntu
- Saber em que partição o Ubuntu esta instalado. Para tanto você pode executar o comando:
$ sudo fdisk -l
Passwd:
Disco /dev/hda: 80.0 GB, 80026361856 bytes
255 cabeças, 63 setores/trilha, 9729 cilindros
Unidades = cilindros de 16065 * 512 = 8225280 bytes
Dispositivo Boot Início Fim Blocos Id Sistema
/dev/hda1 1 9605 77152131 83 Linux
/dev/hda2 9606 9729 996030 82 Linux swap / Solaris
$
No meu caso não tem erro porque tenho apenas o Ubuntu instalado, e como podemos ver ele esta na partição
/dev/hda1, mas caso você tenha outros sistemas instalados (ou outras partições) basta verificar a linha que tem ao seu final a palavra
Linux.
Bem, uma vez que o LiveCD esta carregado basta abrir um terminal e seguir os comandos abaixo (lembrando que eles estão discritos para o meu caso e devem ser adaptados para as informações de cada usuário):
$ sudo -s # apenas para não necessitar executar cada comando iniciado com sudo
senha:
# mount /dev/hda1 /mnt # Montando minha partição Ubuntu
# mount -o bind /dev /mnt/dev # Montando partes importantes do sistema operacional (*)
# mount -o bind /proc /mnt/proc
# chroot /mnt # O comando Chroot permite transformar um diretório no seu diretório raiz atual
# grub-install /dev/hda # Comando para instalação do grub no meu HD
(*) Vou tentar explicar o porque da necessidade desta linha:
# mount -o bind /dev /mnt/dev O arquivos especiais relativos a disco rígido (
/dev/hda1, /dev/hdb2, /dev/sda1, etc) só existem durante a execução do sistema, sendo criados dinamicamente conforme seu hardware. Como o comando
chroot torna o diretório montado como a raiz do seu sistema todas as alterações serão feitas tomando por base a sua instalação no disco, e como usamos o LiveCD estes arquivo não existiram na pasta
dev da instalação, o que torna necessário montar o diretório
/dev do LiveCD por cima do
/dev do HD (com a montagem nada é perdido)
Putz, espero não ter me complicado neste último parágrafo.