De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.


Restaurando o Grub no Ubuntu e enganando o Windows

Colaboração: Wander Barbato

Data de Publicação: 12 de Julho de 2009

Tenho um computador com dual boot há algum tempo (Ubuntu + Windows), porém faz uns 2 anos que não uso mais o Windows nele. No entanto, outro dia formatei (sem querer) a partição do Windows e, como estava precisando de um espaço para meu /home, resolvi montá-lo nesta "nova" partição :-)

Até aí tudo bem. Coloquei outro HD no micro e resolvi instalar o Windows, pois periodicamente preciso instalar e homologar alguns softwares "for Windows" que usamos na nossa instituição.

Como era de se esperar eu perdi meu Grub. Usei um Live CD do Ubuntu, conferi o arquivo de configuração do Grub e restaurei o mesmo (vide o artigo Como reinstalar ou restaurar o GRUB.

O problema é que o meu Ubuntu estava instalado no HD mestre (/dev/sda); já o Windows eu instalei no HD escravo (/dev/sdb). Descobri que o Windows só funciona se estiver instalado no primeiro HD (que maravilha, hein...).

Foi aí que descobri a opção map do Grub. No Grub, o primeiro HD é identificado por hd0, o segundo é identificado por hd1 e assim por diante. Na configuração do ponto de partida para o Windows (que está em hd1), eu acrescentei a linha de comando:

  map (hd1) (hd0)

Dessa forma, quando é invocado o boot através do Windows, este comando mapeia hd1 em hd0, enganando o Windows.

Veja como ficou o meu arquivo de configuração do Grub (/boot/grub/menu.lst):

  default		0
  timeout		10
  password --md5 senha_cifrada
  
  # Boot pelo Linux
  title           Ubuntu 8.04
  root            (hd0,2)
  kernel          /boot/vmlinuz-2.6.24-24-generic root=/dev/sda3 ro quiet splash locale=pt_PT
  initrd          /boot/initrd.img-2.6.24-24-generic
  quiet
  
  # Boot pelo Windows
  title           Windows XP
  rootnoverify    (hd1,0)
  map (hd1) (hd0)
  makeactive
  chainloader     +1
Error: No site found with the domain 's2.dicas-l.com.br' (Learn more)