Curso: Gerenciadores de Boot - Grub
por
em 15-03-2009 às 08:01 (8630 Visualizações)
Veja o restante deste conteúdo aqui
Lembrando que este é um conteúdo livre obtido no CDTC. A abertura dessa série de posts pode ser vista aqui.
Obrigado!4 - GRUB
Introdução - GRUB
GRUB vem de Grand Unified Boot Loader que em português significa grande carregador unificado de boot. O GRUB vem substituindo o LILO em diversas distribuições devido à várias vantagens em relação a este. Ele é capaz de carregar uma grande quantidade de sistemas operacionais como GNU/Linux, GNU/Hurd, DOS, Windows(9x, ME, NT, 2000, XP), IBM OS/2, FreeBSD, NetBSD, OpenBSD, SCO UnixWare e QNX. Outra grande vantagem é o suporte a vários sistemas de arquivos ext2, ext3, ReiserFS, FAT16, FAT32, NTFS, FFS, JFS, XFS, minix e etc. Por ser capaz de carregar imagens de boot e múltiplos módulos o GRUB é o único boot loader capaz de carregar o conjunto de servidores do GNU/Hurd. Esse gerenciador de boot permite também buscar uma imagem de kernel através da rede, por cabos seriais, suporta também hd's IDE, SCSI, detecta toda a memória RAM disponível no sistema, tem interface gráfica com menu, interface de linha de comando e suporta acesso por terminais remotos.
Funcionamento do GRUB
Como o GRUB é um programa muito grande para caber no MBR (512 bytes), ele é dividido em duas ou três imagens, stage1, stage1.5 e stage2.
O stage1 fica no MBR a sua única função é carregar o stage1.5 ou uma parte do stage2 pois o stage1 não entende nenhum sistema de arquivos. O stage 1.5 é muito pequeno e fica nos primeiros bytes do disco logo após o MBR (esse espaço geralmente não é utilizado), esse é um estágio opcional e tem como função carregar o stage2. Por fim, o stage2, caso tenha sido carregado pelo stage1 carrega o restante de si e faz o resto dos procedimentos, mostra ou não o menu com os sistemas operacionais disponíveis, carrega na memória o núcleo do sistema operacional escolhido e passa o controle para este (ou passa o controle para outro carregador como no caso do Windows).
Para mais informações sobre o procedimento de inicialização consultar o manual do GRUB: GNU GRUB Manual 0.97
Sintaxe do GRUB
A maneira como o GRUB chama os discos e as partições é um pouco diferente do Linux, enquanto este chama a primeira partição do primeiro disco de hda1, o GRUB se refere a ela como (hd0,0), e assim segue:
Para referir a um enderço usamos o mesmo padrão, hda1/dev -> (hd0,0)/dev.
- Note que os endereços das partições no GRUB vêm sempre entre parênteses;
- Outra observação é que o GRUB não faz distinção entre discos IDE e SCSI.
Instalação do GRUB
Se a sua distribuição tem o GRUB como boot loader padrão ele será instalado e configurado no momento da instalação do sistema, inclusive reconhecendo outros sistemas pré-instalados. Caso a sua distribuição não instale o GRUB e você deseje por algum motivo instalá-lo, os arquivos podem ser obtidos na ftp disponível.
Onde obter o GRUB?
O GRUB pode ser obtido no endereço: ftp://alpha.gnu.org/gnu/grub/
Quando a página escolhida for carregada vão aparecer vários arquivos referentes ao GRUB, escolha algo como grub-<n>.tar.gz, onde n é a versão (procure escolher sempre a versão mais recente, no momento da construção dessa lição a mais recente era a 0.97).
Procedendo com a instalação do GRUB
Existem algumas maneiras diferentes de instalar o GRUB. Para usuários da distribuições Debian ou derivadas que contenham a ferramenta apt, basta executar os seguintes comandos no terminal:
Logue como superusuário:
#su
Em seguida dê o comando para fazer o download e instalar o grub:
#apt-get install grub
Depois de baixado e instalado devemoscria o diretório onde ficarão os arquivos necessários:
#mkdir /boot/grub
Ainda no terminal como root dê o comando
#update-grub
Para criar o arquivo de configuração menu.lst automaticamente. O último passo é instalar o GRUB no MBR:
#grub-install /dev/hda.
Uma outra forma é obtendo o pacote com os arquivos de instalação e executando os seguintes comandos no terminal:
#tar -xvf grub-<versão>.tar.gz
No novo diretório criado (grub-<versão>):
#./configure
#make
#make install
A partir desses comandos vão ser instalados o interpretador do GRUB (grub), o verificador de Multiboot (mbchk), as imagens do GRUB e também o manual contendo diversas informações. Agora é só seguir os seguintes passos como usuário root:
#mkdir /boot/grub
Ainda no terminal como root dê o comando:
#update-grub
para criar o arquivo de configuração menu.lst automaticamente. O último passo é instalar o GRUB no MBR:
#grub-install /dev/hda.
Restaurando uma instalação do GRUB
É possível também a instalação do grub num disquete para isso execute os seguintes comandos no terminal com um disquete no drive:
#mke2fs /dev /fd0
#mount /dev/fd0 /floppy -t ext2
#mkdir /floppy/grub
#cp /boot/grub/stage1 /floppy/grub
#cp /boot/grub/stage2 /floppy/grub
#cp /boot/grub/menu.lst /floppy/grub
#umount /floppy
Agora entre no terminal do GRUB:
#grub
Digite:
grub>install (fd0)/grub/stage1 d (fd0) (fd0)/grub/stage2 p (fd0)/grub/menu.lst
grub>quit
Depois disso o grub está instalado no disquete, qualquer problema que ocorrer é só dar o boot pelo disquete para acessar o seu sistema operacional.
Uma outra maneira de recuperar o grub é dando o boot no sistema a partir de um live cd de qualquer distribuição e como root executar os comandos:
#mount /dev/hdax /mnt/hdax
#chroot /mnt/hdax
#grub-install /dev/hda
Lembrando que x representa a partição onde o sistema está instalado.
Comentários
+ Enviar Comentário