Você está na página 1de 18

Lição 1 - Introdução

Tentativa: 2
O que é um carregador de boot?

O carregador de boot ou boot loader é um dos primeiros programas a serem


carregados quando um computador é ligado. Esse programa é formado por alguns
arquivos e programas menores que possibilitam a inicialização do sistema sistema
operacional ou permitem a escolha dentre um dos sistemas instalados, caso suporte
Multiboot (GRUB e LILO).

O processo de boot

Toda vez que o micro é ligado ou reiniciado o primeiro software a entrar em ação é o
BIOS da placa-mãe que conta toda a memória disponível, reconhece alguns
dispositivos como HD's, cdrom, gravadoras e procura algum dispositivo de boot, que
tanto pode ser um cd, um disquete, um dispositivo usb, o disco rígido ou qualquer
outro que a placa-mãe suporte, esse processo é chamado de POST (Power-on Self
Test). No caso em que o dispositivo de boot é o disco rígido, o próximo passo é a
leitura do primeiro setor do disco, chamado de MBR(Master Boot Record). Nesse
setor fica o carregador , na verdade um pequeno "software" indica o BIOS a carregar
o "executável" do LILO ou do GRUB em alguma parte do disco, pois o MBR tem
apenas 512 bytes, 446 para esse pequeno software e 66 para a tabela de partições,
onde ficam registrados algumas informações sobre as partições do disco. Após esse
processo o carregador passa o controle do sistema operacional para o kernel, no
caso de sistemas Unix-like, ou carrega o boot loader do outro sistema (caso do
Windows).

LILO

LILO vem de Linux Loader que significa carregador do Linux. É o principal


gerenciador de boot do Linux, vem como padrão em diversas distribuições. O LILO
pode ser carregado através de um disquete ou de um HD, tanto IDE quanto SCSI.
Ele tem suporte a Multiboot, o que permite que até dezesseis sistemas operacionais
diferentes possam ser instalados na mesma máquina como, por exemplo,
GNU/Linux, Windows, BSD's, SCO Unix, UnixWare, IBM OS/2, e também trabalha
com a maioria dos sistemas de arquivos suportados pelo Linux. Uma simples
interface gráfica permite a escolha do sistema a ser carregado e um terminal de
linha de comando permite outras configurações.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.

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.

Lição 2 - LILO
Tentativa: 2
Introdução - LILO
LILO vem de Linux Loader que significa carregador do Linux. É o principal
gerenciador de boot do Linux, vem como padrão em diversas distribuições. O LILO
pode ser carregado através de um disquete ou de um HD, tanto IDE quanto SCSI.
Ele tem suporte a Multiboot, o que permite que até dezesseis sistemas operacionais
diferentes possam ser instalados na mesma máquina como, por exemplo,
GNU/Linux, Windows, BSD's, SCO Unix, UnixWare, IBM OS/2, e também trabalha
com a maioria dos sistemas de arquivos suportados pelo Linux. Uma simples
interface gráfica permite a escolha do sistema a ser carregado e um terminal de
linha de comando permite outras configurações.

Instalação do LILO
Grande parte das distribuições Linux vem com o LILO como boot loader padrão. No
momento da instalação do sistema o LILO já é instalado e configurado, inclusive
reconhecendo outros sistemas pré-instalados. Caso a sua distribuição não instale o
LILO e você deseje por algum motivo instalá-lo, os arquivos podem ser obtidos em
uma das ftp disponíveis.

Onde obter o LILO?

O LILO pode ser obtido nos endereços:

ftp://tsx-11.mit.edu/pub/linux/packages/lilo/

ftp://sunsite.unc.edu/pub/Linux/system/boot/lilo/

Quando a página escolhida for carregada vão aparecer vários arquivos referentes ao
LILO, escolha algo como lilo-<n>.tar.gz, onde n é a versão (procure escolher sempre
a versão mais recente).

Procedendo com a instalação

Para usuários da distribuições Debian ou derivadas que contenham a ferramenta


apt, basta executar os seguintes comandos no terminal:

Para logar como usuário root:


#su

Para baixar e instalar o lilo:


#apt-get install lilo

O passo seguinte é digitar o comando:

#liloconfig

No terminal, para gerar o arquivo de configuração. Por último execute o comando


lilo:

#lilo

Outra maneira de instalar é obtendo um pacote de instalação do LILO, esse deve ser
desempacotado abrindo o terminal e digitando o comando:

#tar -xvf lilo-<versão>.tar.gz

Um diretório com o nome lilo-<versão> será criado com todos os arquivos de


instalação. Ainda no terminal entre no novo diretório criado:

#cd /home/nomedousuario/lilo-<versão>

e dê os seguintes comandos:
#make (compila o programa e monta todas as partes).

Depois dê o comando:

#make install (copia todos os arquivos do LILO para os


diretórios onde eles estão instalados. O diretório /sbin deve
conter o arquivo lilo, o diretório /usr/sbin deve conter
keytab-lilo).

Agora o LILO está quase pronto, basta dar os comandos:

#liloconfig
#lilo

Restaurando uma instalação do LILO


Caso ocorra algum problema com o seu LILO, use um disquete de inicialização ou o
cd de instalação da sua distribuição para dar o boot no sistema ou então use um live
cd de qualquer distribuição. Logue como root e dê os comandos para criar os
diretórios para os pontos de montagem:

#mkdir /mnt/root

Agora será necessário montar a partição onde estão localizadas as pastas /root e
/boot:

#mount /dev/hdax /mnt/root

Observe que x representa a partição onde se encontram os diretórios citados (se


esses diretórios se encontram em um segundo HD então deve-se usar hdbx).

Agora o LILO será reinstalado no MBR com o comando:

#/mnt/root/sbin/lilo -C /mnt/root/etc/lilo.conf -m
/mnt/boot/map

Após esse procedimento é só reiniciar o computador.

Lição 3 - Configurando o LILO


Tentativa: 2
O arquivo de configuração do LILO
O LILO tem um arquivo de configuração chamado de lilo.conf onde ficam
guardadas as informações que serão passadas na inicialização. Segue abaixo um
exemplo desse arquivo (As linhas com o símbolo "#" no começo são apenas
comentários).

#Lilo.conf

#Seção global do LILO


lba32
boot=/dev/hda
map=/boot/map
compact
delay 20
timeout 50
prompt
vga=0x317
default=Linux2.6.12.3

#Seção de imagens do LILO


#Imagem do Linux
image=/boot/Linux2.6.12.3
label=Linux2.6.12.3
root=/dev/hda1
read-only

#Imagem do Windows
other=/dev/hda2
table=/dev/hda
label=Wndows
#Fim do arquivo

O arquivo fica localizado em /etc/lilo.conf e para alterá-lo o usuário deve estar


logado como root. A seção global do arquivo tem as configurações gerais, como
local de instalação, modo de tela, tempo de espera até carregar o sistema default, e
etc. A seção de imagens diz respeito a configuração de cada partição a seção Linux,
por exemplo, diz respeito a instalação do Linux feita na primeira partição do primeiro
disco. Após cada mudança no arquivo lilo.conf o LILO deve ser atualizado com
o comando 'lilo' no terminal.

Opções de configurações globais

O LILO permite várias configurações globais que podem ser definidas pela linha de
comando, mas é mais conviniente gravar essas configurações no arquivo para que
sempre que iniciado o sistema elas estejam disponívies. Segue abaixo algumas
dessas configurações.

• backup=[arquivo/dispositivo] - Copia o setor de boot original para o arquivo


ou dispositivo especificado;
• boot=dispositivo -Define o nome do dispositivo onde será gravado o setor de
partida do LILO (normalmente é usada a partição ativa ou o Master Boot
Record - MBR). Caso não seja especificado, o dispositivo montado como a
partição raiz será usado;
• compact - Tenta agrupar requisições de leitura para setores seguintes ao ser
lido. Isto reduz o tempo de inicialização e deixa o mapa menor. É
normalmente recomendado em disquetes;
• default=imagem - Usa a imagem especificada como padrão ao invés da
primeira encontrada no arquivo lilo.conf;
• delay=[num] - Permite ajustar o número de segundos (em décimos de
segundos) que o gerenciador de partida deve aguardar para carregar a
primeira imagem de disco (ou a especificada por default=). Esta pausa lhe
permite selecionar que sistema operacional será carregado. Se o delay for
omitido ou igual a 0 o LILO carrega o sistema default sem esperar qualquer
comando;
• install=setor-boot - Instala o arquivo setor-boot como novo setor de boot do
disco. Se install for omitido, /boot/boot.b é usado por padrão;
• lba32 - Permite que o LILO quebre o limite de 1024 cilindros do disco rígido,
inicializando o GNU/Linux em um cilindro acima deste. É altamente
recomendado o uso dessa opção;
\item map=arquivo-mapa - Especifica a localização do arquivo de mapa
(.map). Se não for especificado, /boot/map é usado;
• nowarn - Não mostra mensagens de alerta;
• password=senha - Permite proteger todas as imagens de disco com uma
única senha. Caso a senha esteja incorreta, o LILO é novamente carregado;
• prompt - Mostra imediatamente o aviso de boot: ao invés de mostrar somente
quando a tecla Shift é pressionada;
• verbose=[num] - Ativa mensagens sobre o processamento do LILO. Os
números podem ser especificados de 1 a 5, quanto maior o número, maior a
quantidade de detalhes mostrados;
• timeout=[num] - Ajusta o tempo máximo de espera (em décimos de
segundos) de digitação no teclado. Se nenhuma tecla é pressionada no
tempo especificado, a primeira imagem é automaticamente carregada.
Igualmente a digitação de senha é interrompida se o usuário estiver inativo
por este período.

Existem também outras configurações globais mais avançadas, a descrição está


disponível no manual do LILO que pode ser encontrado em
/usr/share/doc/lilo/Manual.txt.gz.

Opções de configuração de imagem


Cada imagem de sistema no LILO pode ter suas próprias opções, segue a lista
destas:

• table=dispositivo - Indica o dispositivo que contém a tabela de partição para


aquele dispositivo. Necessário apenas para imagens especificadas por
other=;
• label=[nome] - Permite especificar um nome para a imagem. Este nome será
usado na linha boot: para inicializar o sistema;
• alias=[nome] - Apelido para a imagem de disco. É como um segundo label;
• optional - Ignora a imagem caso não estiver disponível no momento da
criação do mapa. É útil para especificar kernels que não estão sempre
presentes no sistema;
• password=senha - Protege a imagem atual com a senha. Caso a senha
esteja incorreta, o setor de partida do Lilo é novamente carregado;
• restricted - A senha somente é pedida para iniciar a imagem se o sistema for
iniciado no modo single;
• Single-key -Permite inicializar uma imagem apertando apenas uma tecla sem
necessidade da tecla enter. Para funcionar a imagem deve ter um alias, como
por exemplo uma imagem com alias=1, para carregar essa imagem é
necessário pressionar apenas a tecla 1.

Mais configuraçõs podem ser vistas na documentação do LILO.

Opções de imagem do kernel


As opções de imagem do kernel podem ser colocadas em cada imagem ou podem
ser colocadas nas configurações globais, neste caso as opções serão aplicadas em
todas as imagens:

• append - Permite passar opções adicionais ao kernel. Essa opção é usada


normalmente para configurar dispositivos que não foram auto-detectados;
• read-only – Faz com que o LILO monte uma imagem somente para a leitura.
(Todas as imagens do Linux devem conter essa opção);
• root - Permite especificar o local que deve ser montado como root;
• vga – Permite especificar como o modo texto deve ser carregado (o tamanho
da tela, as letras, etc) . A opção mais utiliada é normal, se for colocada a
opção ask, na hora da inicialização serão peguntadas ao usuário as
configurações desejadas.

Mais opções podem ser consultadas no manual.

Lição 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
omo 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: http://www.gnu.org/software/grub/manual/html_node/

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:

Linux GRUB
/dev/hda1 (hd0,0)
/dev/hdb2 (hd1,1)
/devhda2 (hd0,1)
/dev/sda1 (hd0,0)
/dev/sda2 (hd0,1)
/dev/fd0 (fd0)

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.
Lição 4 - GRUB
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 devemos criar 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.

Lição 5 - Configurando o GRUB


O arquivo de configuração do GRUB

O arquivo de configuração do GRUB é o menu.lst que fica no diretório


/boot/grub. Abaixo temos um exemplo desse arquivo:

#menu.lst
timeout 30
color light-cyan/black white/blue
default 0

#imagem de boot do Linux


title Linux 2.4.21
root (hd0,1)
kernel (hd0,1)/boot/vmlinuz-2.4.21

#imagem de boot do FreeBSD


title FreeBSD
root (hd0,2,a)
kernel /boot/loader

#imagem de boot do GNU/Hurd


title GNU Hurd
root (hd0,0)
kernel /boot/gnumach.gz root=hd0s1
module /boot/serverboot.gz

#imagem de boot do winsdows


title Windows XP
rootnoverify (hd0,0)
chainloader +1
makeactive
#fim do arquivo

Para alterar o arquivo o usuário deve estar logado como root, diferentemente do
LILO, não é necessário reinstalar o GRUB quando o arquivo menu.lst for modificado,
na próxima vez que o sistema for reiniciado as alterações já estarão aplicadas.

Há a opção de especificar o runlevel que o sistema será inicializado, basta adicionar


o mesmo na linha dos parâmetros do kernel:

Para o modo single user:


kernel (hd0,0)/boot/vmlinuz-2.4.21 single

Modo console (runlevel 2):


kernel (hd0,0)/boot/vmlinuz-2.4.21 2

Boot gráfico (runlevel 5):


kernel (hd0,0)/boot/vmlinuz-2.4.21 5

Configurações globais
Dentre os vários parâmetros que podem ser usados nas configurações globais do
GRUB as mais comuns são:

• timeout = Define um tempo (em segundos) de espera. Se nenhuma tecla for


pressionada, carrega a imagem padrão;
• default - Define qual será a opção padrão que deve ser automaticamente
selecionada quando nenhuma outra for especificada em um tempo definido
por timeout;
• fallback - Caso ocorra algum erro inesperado e a opção padrão não possa
ser carregada, este parâmetro define qual a outra opção deve ser utilizada;
• color- Permite que você escolha as cores usadas no menu de boot;
• password - Permite que você especifique uma senha. Está será solicitada
sempre que houver necessidade de realizar uma função que não seja
carregar as imagens disponíveis, como por exemplo acessar a linha de
comandos do GRUB;
• hiddenmenu - Está opção faz com que o menu de opções não seja mostrado
e de boot na imagem especificada por "default" depois de expirado o tempo
definido em timeout. O usuário pode requisitar o menu com as opções
pressionando a tecla <ESC> antes que o tempo definido em timeout expire.
Opcções de configuração de imagem
As principais opções de confuguração por imagem no GRUB são:

• title- Define um texto que será apresentado no menu de boot para


identificar o sistema a ser inicializado;
• root - Determina qual a partição raiz do sistema a ser inicializada;
• rootnoverify - IIdêntica à opção root, mas não tenta montar a partição-
alvo, o que é necessário para alguns sistemas como Dos e Windows;
• kernel -Nesta opção você informa qual o kernel vai ser inicializado. Você
pode passar parâmetros diretamente para o kernel também.

Ex.: kernel (hd0,0)/boot/vmlinuz-2.4.16

• module- Faz com que algum módulo necessário para o boot seja carregado.
Lembre-se que estes não são módulos do kernel (módulos de som, rede, etc.)
e sim módulos necessários ao boot de alguns sistemas, como por exemplo o
GNU Hurd;
• lock - Quando você quiser controlar se uma pessoa pode iniciar um sistema
que esteja listado nas opções do menu de boot, você pode utilizar esta opção
que faz com que a senha especificada com o comando "password" seja
solicitada no momento em que se tentar carregar a imagem em questão;
• makeactive - Torna a partição ativa. Este comando está limitado a partições
primárias dos discos;
• chainloader - Alguns sistemas como o Windows ou Dos armazenam seu
próprio gerenciador de boot no início da partição em que ele está instalado.
Para efetuar o boot destes sistemas através do GRUB, você precisa pedir
para que o gerenciador de boot de tal sistema seja carregado e faça seu
trabalho, dando o boot;
• hide e unhide - Esconde e mostra partição respectivamente. Estas duas
opções são necessárias quando houver mais de uma versão do Dos ou
Windows na máquina em partições diferentes, já que estes sistemas detectam
automaticamente a partição e quase sempre o fazem de modo errado.
Suponha o Windows na primeira partição primária (hd0,0) e o Dos na
segunda partição primária (hd0,1). Quando quisermos carregar estes
sistemas devemos proceder da seguinte maneira:

title Windows
hide (hd0,1)
unhide (hd0,0)
rootnoverify (hd0,0)
chainloader +1
makeactive

title Dos
hide (hd0,0)
unhide (hd0,1)
rootnoverify (hd0,1)
chainloader +1
makeactive

• map - Alguns sistemas não permitem ser inicializados quando não estão no
primeiro disco (Dos, Win 9x, etc.). Para resolver esta e outras situações o
GRUB tem um comando que permite enganar tal sistema mapeando as
unidades de disco do modo como lhe for mais conveniente. Imagine que você
tenha o primeiro disco (hd0) com o GNU/Linux instalado e em um outro disco
(hd1) com o Windows/Dos instalado. O Windows/Dos não permitem serem
inicializados desta forma e para resolver esse problema você poderia usar a
seguinte entrada no arquivo de configurações do GRUB:

title Windows
unhide (hd1,0)
rootnoverify (hd1,0)
chainloader +1
map (hd1) (hd0)
makeactive

Opções de imagem do kernel


As opções de imagem do kernel são as mesmas que as do LILO, segue abaixo uma
lista com algumas delas:

• append- Permite passar opções adicionais ao kernel. Essa opção é usada


normalmente para configurar dispositivos que não foram auto-detectados;
• read-only – Faz com que o GRUB monte uma imagem somente para a
leitura. (Todas as imagens do Linux devem conter essa opção);
• root - Permite especificar o local que deve ser montado como root;
• vga –Permite especificar como o modo texto deve ser carregado (o tamanho
da tela, as letras, etc) . A opção mais utilizada é a normal, se for colocada a
opção ask, na hora da inicialização serão peguntadas ao usuário as
configurações desejadas.

Mais informações sobre o GRUB podem ser encontradas no manual no endereço:

http://www.gnu.org/software/grub/manual/grub.html

Lição 6 - Mensagens de erro no GRUB e no LILO


Devido a um erro acorrido durante a instalação ou algum problema na configuração
dos arquivos de configuração, o LILO e o GRUB podem apresentar algumas
mansagens de erro em algum dos seus estágios de carregamento e simplesmente
parar de carregar. Essas mensagens dizem ao usuário o que deve estar
acontecendo.

Mensagens de erro do LILO


Quando o LILO é carregado, a palavra LILO é mostrada na tela. Cada letra é
mostrada após uma ação ser realizada pelo programa. Se essa palavra parar em
alguma letra significa que houve um erro durante a inicialização e a partir do que foi
escrito podemos identificá-lo.

• (nada) – Nenhuma parte do LILO foi carregada. O LILO pode não está
instalado ou a partição em que ele está instalado não está ativa;
• L<erro>... - O primeiro estágio foi carregado e incializado, mas o segundo
estágio não pode ser carregado. Esse erro geralmente representa um erro no
disco. O código de dois dígitos apresentado indica o tipo de problema com o
disco (no manual há uma lista completa com os códigos dos erros);
• LI - O primeiro estágio do carregador foi capaz de carregar o segundo
estágio, mas foi incapaz de executar a função. Isso pode ser causado devido
a um erro nos parâmetros do hd ou o /boot/boot.b foi movido sem que o map
installer tenha sido rodado;
• LIL– O segundo estágio do carregador começou, mas não pode carregar a
tabela do descritor do arquivo de mapa. Isso é causado devido a um erro no
disco ou nos parâmetros do hd;
• LIL? - O segundo estágio do carregador foi carregado num endereço
incorreto. Isso pode ser causado devido a um erro nos parâmetros do hd ou o
/boot/boot.b foi movido sem que o map installer tenha sido rodado;
• LIL- - A tabela descritora está corrompida. Isso pode ser causado por um
erro nos parâmetros do hd ou o /boot/map foi movido sem que o map installer
tenha sido rodado.

Se a palavra LILO aparecer na tela tudo foi executado corretamente.

Mensagens de erro do GRUB


O GRUB exibe suas mensagens de erro de duas formas diferentes, uma para o
primeiro estágio e outra para o segundo estágio de carregamento.

Mensagens de erro do primeiro estágio


Quando ocorre um erro no primeiro estágio o GRUB exibe uma mensagem
compreensiva e para, o usuário deve então pressionar <CTRL>+<ALT>+<DEL>para
reiniciar . Segue abaixo uma lista com os erros do estágio1.

Hard Disk Error

O estágio 2 e o 1.5 estão sendo lidos do disco, e a tentativa de determinar o


tamanho e os parâmetros do disco falharam.

Floppy Error
O estágio 2 e o 1.5 estão sendo lidos de um disquete, e a tentativa de determinar o
tamanho e os parâmetros do disquete falharam.

Read Error

Ocorreu um erro na leitura do disco enquanto tentava ler o estágio 2 ou 1.5.

Geom Error

O local do estágio 2 ou 1.5 não está numa porção do disco suportado diretamente
pelas chamadas do BIOS. Isso ocorre porque os parâmetros do BIOS foram
mudados ou o disco foi removido para uma outra máquina ou para uma outra
controladora, ou o GRUB não foi instalado usando a si mesmo (se isto acontecer, a
versão do estágio 2 para esse erro deve ser vista).

Mensagens de erro do segundo estágio


A forma como o estágio 2 trata os seus erros é abortando a operação em questão,
mostrando uma mensagem de erro na tela e, se possível, cotinua a execução. A lista
com os erros do segundo estágio pode ser encontrada no endereço:

http://www.gnu.org/software/grub/manual/grub.html#Stage2-errors

Caso ocorra um erro no estágio 1.5 é mostrada uma mensagem de erro "Error
número" e a execução é parada, o usuário deve então pressionar
<CTRL>+<ALT>+<DEL> para reiniciar. A lista com o número dos erros é a mesmo
para o estágio 1.5 e para o estágio 2.

Lição 7 - Personalizando o seu boot loader


Introdução - Personalizando o seu boot loader
O GRUB e o LILO permitem algumas personalizações como mudar a cor das letras,
a cor do fundo, o tamanho da tela, o nome das imagens e etc. Nessa lição será
mostrado como adicionar uma imagem de fundo ao seu boot loader (chamamos de
bootsplash).

Personalizando o LILO com bootsplash


O LILO permite que uma imagem de fundo apareça na tela gráfica durante a escolha
do sistema operacional. A imagem a ser adicionada deve ter o tamanho 640x480, ter
apenas 16 cores e estar no formato bitmap (.bmp). Essa imagem pode ser feita no
GIMP ou em qualquer outro programa de criação de imagens, ou pode-se pegar
uma imagem qualquer e transformá-la em 16 cores e .bmp .
Quando a imagem já estiver pronta temos que configurar o arquivo lilo.conf para que
ele carregue a imagem de fundo. Devemos então adicionar os seguintes
parâmetros:

bitmap=<bitmap-file>
bmp-colors=<fg>,<bg>,<sh>,<hfg>,<hbg>,<hsh>
bmp-table=<x>,<y>,<ncol>,<nrow>,<xsep>,<spill>
bmp-timer=<x>,<y>,<fg>,<bg>,<sh>

bitmap=<bitmap-file>O campo deve ser preenchido com o endereço


da imagem que será carregada.

bmp-colors=<fg>,<bg>,<sh>,<hfg>,<hbg>,<hsh>
Esse parâmetro define o valor decimal para as cores das letras que aparecerão na
tela. O campo é composto por seis entradas, as três primeiras para o texto normal e
as outras para o texto em destaque. Os campos <fg> e <hfg> se referem a cor da
letra, <bg> e <hbg> a cor do fundo, <sh> e <hsh> a cor da sombra. Se a cor de
fundo não for definida então será definido como transparente. Se a cor de sombra
não for definida será usada como padrão 'none' (nenhuma).

bmp-table=<x>,<y>,<ncol>,<nrow>,<xsep>
Esse parâmetro especifica onde aparecerá a tela de menu para a escolha do
sistema operacional. <x>,<y> especificam as posições x e y em relação ao canto
esquerdo superior. <ncol> é o número de colunas do menu.<nrow> é o número de
entradas em cada coluna. Se mais de uma coluna é usada <xsep> é o número de
colunas de caracteres entre cada coluna. Os valores das cordenadas x e y devem
ser acompanhados pelo sufixo 'p'.

bmp-timer=<x>,<y>,<fg>,<bg>,<sh>
Esse parâmetro é opcional, ele mostra a contagem do parâmetro 'timeout'. <x> e <y>
são usados da mesma forma que em 'bmp-table', os campos <fg>,<bg>,<sh> são
usados da mesma forma que em 'bmp-colors', com a diferença que <bg> deve ser
especificado.

Exemplo

Segue abaixo um exemplo de preenchimento desses campos:

bitmap=/boot/exemplo_bootsplash.bmp
bmp-colors=6,,,3,,
bmp-table=423p,181p,1,8,19
bmp-timer=536p,453p,3,4,,

Não esqueça de dar o comando lilo -v para atualizar o LILO.

Personalizando o GRUB com bootsplash


Assim como o LILO, o GRUB também permite uma imagem de fundo durante a
exibição do menu gráfico. Essa imagem deve estar no formato XPixMap (.xpm), ter o
tamanho 640x480, ter somente 14 cores e estar no formato do gzip (.gz).

Quando a imagem já estiver pronta temos que configurar o arquivo menu.lst para
que ele carregue a imagem de fundo. Devemos então adicionar o seguinte
parâmetro:

splashimage=(hdx,x)/GRUB/exemplo_splashimage.xpm.gz

Lembrando que no lugar de (hdx,x)/... deve estar a partição e o diretório onde se


encontra a imagem.

Uma maneira interessante de testar as suas imagens é entrando no prompt do grub


apertando 'c', depois logue na partição onde estão as imagens (root(hdx,x)) e dê o
comando splashimage /GRUB/.../exemplo.xpm.gz . Depois de testadas as imagens
altere o arquivo menu.lst e adicione a imagem desejada.

Mudando as cores
Para mudar as cores das fontes do menu utilizamos parâmetro color, esse percebe
uma cor que pode ser uma das listadas abaixo:

• black;
• green;
• blue;
• cyan;
• red;
• magenta;
• brown;
• light-gray.

O modo de usar é:

color light-gray/blue black/light-gray

Desinstalando o boot loader

Se por algum motivo for necessário desinstalar o LILO ou o GRUB você deve repor
o MBR com outro boot loader, pois com o MBR vazio nenhum sistema será
carregado automaticamente. Nesse curso foi ensinado como instalar o GRUB e o
LILO, mas caso seja necessário instalar o carregador do Windows, você deve estar
logado no Windows e no prompt digitar o comando fdisk /MBR para reinstalar o
boot loader padrão do sistema no MBR. Caso esse comando não funcione e você
disponha de um cd de instalação do Windows entre num prompt do DOS e digite:
fixmbr

Você também pode gostar