Recuperando o GRUB após instalação do Windows PET Engenharia de Computação - http://www.inf.ufes.br/~pet 1 Instruções iniciais Para efetuar as configurações a seguir talvez precisaremos executar comandos e editar arquivos como root. Veja o documento Introdução disponível na página do PET para maiores explicações sobre como fazer isso. Mas se você quer apenas um resumo: Para logar como root em um terminal digite: su (enter) senha_root Para abrir um arquivo usando o nano (editor de texto simples) faça: nano nome_arquivo Exemplo: abrir o arquivo hosts localizado em /etc nano /etc/hosts Para salvar o arquivo pressione ctrl+o (letra O) e pressione enter. Para sair do editor pressione ctrl+x. 2 Começando Quando temos mais de um sistema operacional instalado na mesma máquina é necessário que selecionemos qual deles deve ser carregado quando o computador é inicializado. Para tanto usa-se gerenciadores de boot. O GRUB (GRand Unified Bootloader) é o gerenciador de boot mais usado no Linux. Ele é instalado na MBR do HD. Quando instalamos o Windows, este altera a MBR, fazendo com que o gerenciador de boot não seja carregado Quando isso acontece o Windows é automaticamente iniciado, não sendo mais possível inicializar o Linux, apesar deste ainda ter seus arquivos intactos na sua partição. Este tutorial apresenta uma forma de recuperar o GRUB, sem sem necessário reinstalar todo o Linux. 1
3 Material necessário Precisaremos de um Live-CD para dar boot na máquina. Você poderá usar um Kurumin por exemplo. Recomendamos o RescueCD, como o nome já diz, um CD de resgate. Ele possui apenas 240 MB, vários utilitários de manutenção, é um Live-CD e possui um particionador de disco completo. A interface gráfica dele é um pouco ruim, mas nem precisaremos usá-la para isso. Você poderá baixá-lo no endereço: http://www.sysresccd.org/. 4 Mãos à obra O que iremos fazer é acessar a partição do Linux como root e reinstalar o GRUB na MBR, sem prejudicar os sistemas operacionais instalados. Primeiro, use o Live CD para dar boot na máquina. Quando o processo estiver terminado, crie uma pasta para ser o ponto de montagem para a partição do Linux. Você pode fazer isso com o comando: mkdir -p /mnt/linux A opção -p serve para criar as pastas recursivamente, caso alguma não exista. Por exemplo, se a pasta /mnt não existir, o comando a criará e depois criará a pasta linux dentro dela. Mas caso a pasta /mnt já exista, o comando apenas criará a pasta linux dentro dela, mantendo os outros arquivos da pasta /mnt existentes anteriormente. Agora precisamos saber qual a partição do HD que o Linux está instalado. Digite: fdisk -l Esse comando mostrará os HDs que existem em seu sistema, com as respectivas partições. A primeira coluna mostra o nome pelo qual o Linux chama a partição e última coluna mostra o tipo do sistema de arquivos da partição. Um exemplo de saída do comando é: 1 Disk / dev / sda : 8 0. 0 GB, 80026361856 b y t e s 2 255 heads, 63 s e c t o r s / t r a c k, 9729 c y l i n d e r s 3 U n i t s = c i l i n d r o s o f 16065 512 = 8225280 b y t e s 4 Disk i d e n t i f i e r : 0 x29e529e4 5 6 D i s p o s i t i v o Boot S t a r t End B l o c k s Id System 7 / dev / sda1 1 5267 42307146 7 HPFS ou NTFS 8 / dev / sda2 5268 9729 35841015 5 E s t e n d i d a 9 / dev / sda5 5268 9653 35230513+ 83 Linux 10 / dev / sda6 9654 9729 610438+ 82 Linux swap / S o l a r i s 2
Neste caso o Linux está instalado na partição /dev/sda5. Guarde esse dado referente ao seu computador. 4.1 Montando a partição Linux Agora monte o Linux na pasta /mnt/linux com o comando: mount /dev/sda5 /mnt/linux No lugar do /dev/sda5 coloque a partição na qual o seu Linux está instalado. 4.2 Reinstalando o GRUB Atualmente, existe uma nova versão do GRUB, o GRUB 2 (versão a partir do grub 0.97-59), e com ele alguns comandos são diferentes, abaixo segue a reinstalação para as duas versões. 4.2.1 GRUB Agora temos que acessar a partição montada como root, para isso devemos usar o comando chroot, digite: chroot /mnt/linux O chroot irá fazer com que sua partição raiz seja a pasta /mnt/linux, ou seja, a partir de agora você está no Linux instalado no seu computador e usará os programas dele. Antes de reinstalar o GRUB ultilize o comando: update-grub Este comando localiza os sistemas operacionais instalados e atualiza o arquivo de configuração. Reinstale o GRUB com o comando: grub-install /dev/sda Com isso o grub será instalado na MBR. 3
4.2.2 GRUB 2 Do mesmo modo, precisamos dar o chroot, mas no GRUB 2 há uma pequena diferença, portanto digite: mount -o bind /dev /mnt/linux/dev mount -t proc none /mnt/linux/proc chroot /mnt/linux /bin/bash Usamos um comando equivalente ao update-grub: /usr/sbin/update-grub O comando acima atualiza o grub e finalmente fazemos: grub-install /dev/sda Nos dois casos substitua o /dev/sda pelo dispositivo de HD do seu computador. Por exemplo, se o Windows está instalado no dispositivo /dev/hda1, então coloque /dev/hda. Tire apenas o número final. Então, desmonte as partições montadas com os comandos: exit Para sair do chroot, e depois: umount /mnt/linux/proc umount /mnt/linux/dev umount /mnt/linux Reinicie o computador para testar as modificações. Você pode usar o comando: reboot Ou então: shutdown -r now Obs: Lembre-se de tirar o CD do drive quando o computador estiver ligando. 4
5 O GRUB foi instalado mas não aparece a opção para iniciar o Windows Com os comandos update-grub e /usr/sbin/update-grub (no caso do GRUB 2) isso provavelmente não vai acontecer. Caso isso aconteça, teremos que iniciar o Linux e editar manualmente o menu do GRUB, esse procedimento só funciona para o GRUB antigo, o GRUB 2 não apresenta esse problema. Inicie o Linux do seu PC normalmente, sem usar qualque CD de boot. Como root, abra o arquivo /boot/grub/menu.lst e coloque as linhas a seguir no final do arquivo: t i t l e M i c r o s o f t Windows XP P r o f e s s i o n a l r o o t ( hd0, 0 ) s a v e d e f a u l t m a k e a c t i v e c h a i n l o a d e r +1 Substitua o último número do (hd0,0) pelo número imediatamente anterior da partição que está instalado o Windows. Por exemplo, via comando fdisk -l você viu que a partição que está instalado o Windows (a partição cujo tipo do sistema de arquivos é FAT ou NTFS) é a /dev/sda3. Então coloque (hd0,2). Se o Windows estiver instalado na partição /dev/hda2, coloque (hd0,1). Se estiver instalado em /dev/hdb1 (atente-se para a letra b), coloque (hd1,0). Pronto, reinicie o computador e verifique os resultados. 5