Índice
Gerenciadores de Partida são programas que carregam um sistema operacional e/ou permitem escolher qual será iniciado. Normalmente este programas são gravados no setor de boot (inicialização) da partição ativa ou no master boot record (MBR) do disco rígido.
Este capitulo explica o funcionamento de cada um dos principais gerenciadores de partida usados no GNU/Linux, em que situações é recomendado seu uso, as características, como configura-lo e alguns exemplos de configuração.
O LILO (Linux Loader) é sem dúvida o gerenciador de partida padrão para quem deseja iniciar o GNU/Linux através do disco rígido. Ele permite selecionar qual sistema operacional será iniciado (caso você possua mais de um) e funciona tanto em discos rígidos IDE como SCSI.
A seleção de qual sistema operacional e a passagem de parâmetros ao kernel pode
ser feita automaticamente ou usando o aviso de boot:
do
LILO.
Os dados para a criação do novo setor de boot que
armazenará o gerenciador de partida são lidos do arquivo
/etc/lilo.conf
Este arquivo pode ser criado em qualquer
editor de textos (como o ae ou vi).
Normalmente ele é criado durante a instalação de sua distribuição
GNU/Linux mas por algum motivo pode ser preciso modifica-lo
ou personaliza-lo (para incluir novos sistemas operacionais, mensagens, alterar
o tempo de espera para a partida automática, etc).
O arquivo /etc/lilo.conf
é dividido em duas seções:
Geral e Imagens. A seção
Geral vem no inicio do arquivo e contém opções que serão
usadas na inicialização do Lilo e parâmetros que serão
passados ao kernel. A seção Imagens contém opções
especificas identificando qual a partição que contém o sistema operacional,
como será montado inicialmente o sistema de arquivos, tabela de partição, o
arquivo que será carregado na memória para inicializar o sistema, etc. Abaixo
um modelo do arquivo /etc/lilo.conf
para sistemas que só
possuem o GNU/Linux instalado:
boot=/dev/hda1 compact install=text map=/boot/map vga=normal delay=20 lba32 image=/vmlinuz root=/dev/hda1 label=Linux read-only
Para criar um novo gerenciador de partida através do arquivo
/etc/lilo.conf
, execute o comando
lilo
.
No exemplo acima, o gerenciador de partida será instalado em
/dev/hda1
(veja “Identificação de discos e partições em sistemas Linux”) , utilizará um
setor de boot compacto (compact), modo de vídeo VGA normal (80x25), esperará 2
segundos antes de processar automaticamente a primeira seção
image=
e carregará o kernel /vmlinux
de
/dev/hda1
. Para detalhes sobre opções que podem ser
usadas neste arquivo veja “Opções usadas no LILO”.
Para mostrar o aviso de boot:
, você deverá ligar as teclas
Caps Lock ou Scrool lock na partida ou pressionar a tecla
Shift
durante os dois segundos de pausa. Outro método é
incluir a opção prompt
na seção global
para que o aviso de boot:
seja mostrado automaticamente após
carregar o Lilo.
Abaixo uma configuração para computadores com mais de um sistema operacional (Usando GNU/Linux e DOS):
boot=/dev/hda1 compact lba32 install=menu map=/boot/map vga=normal delay=20 prompt image=/vmlinuz root=/dev/hda1 label=linux read-only other=/dev/hda2 table=/dev/hda label=dos
O exemplo acima é idêntico ao anterior, o que foi acrescentado foi a opção
prompt
na seção geral (para que seja
mostrado imediatamente o aviso de boot:
no momento em que o
LILO for carregado), e incluída uma imagem de disco
DOS localizado em /dev/hda2
. No
momento da inicialização é mostrada a mensagem boot:
e caso
seja digitado DOS
e pressionado ENTER, o sistema iniciará o
DOS. Caso a tecla Enter seja pressionada sem especificar a
imagem, a primeira será carregada (neste caso o GNU/Linux).
Você pode substituir a palavra GNU/Linux
da opção
label
por o número 1
e
DOS
por 2
, desta forma o número pode ser
digitado para iniciar o sistema operacional. Isto é muito útil para construir
um menu usando a opção message
. Para detalhes veja “Opções usadas no LILO”.
A seção Geral vem do inicio do arquivo até a palavra
delay=20
. A partir do primeiro aparecimento da palavra
image
, other
ou range
,
tudo o que vier abaixo será interpretado como imagens de inicialização.
Por padrão, a imagem carregada é a especificada por default=
ou a primeira que aparece no arquivo (caso default=
não seja
especificado). Para carregar o outro sistema (o DOS),
digite o nome da imagem de disco no aviso de boot:
(especificada em label=
) que será carregada. Você também
pode passar parâmetros manualmente ao kernel digitando o nome da imagem de
disco e uma opção do kernel ou através do arquivo
/etc/lilo.conf
(veja “Opções usadas no LILO”).
O LILO pode inicializar o seguintes tipos de imagens:
Imagens do kernel de um arquivo. Normalmente usado para iniciar o
GNU/Linux pelo disco rígido e especificado pelo parâmetro
image=
.
Imagens do kernel de um dispositivo de bloco (como um disquete). Neste caso o número de setores a serem lidos devem ser especificados na forma PRIMEIRO-ÚLTIMO ou PRIMEIRO+NÚMERO de setores a serem lidos.
É necessário especificar o parâmetro image=
e
range=
, por exemplo:
image=/dev/fd0 range=1+512
Todas as opções do kernel podem ser usadas na inicialização por dispositivo.
O setor de boot de outro sistema operacional (como o DOS,
OS/2, etc). O setor de partida é armazenado junto com a
tabela de partição no arquivo /boot/map
. É necessário
especificar o parâmetro OTHER=dispositivo
ou
OTHER=arquivo
e a inicialização através de um setor de
partida possui algumas opções especiais como o TABLE=
(para
especificar a tabela de partição) e o MAP-DRIVE=
(identificação da unidade de discos pelo sistema operacional). Veja o exemplo
desta configuração abaixo:
other=/dev/hda2 table=/dev/hda label=DOS map-drive=0x80 to = 0x81 map-drive=0x81 to = 0x80
Observações:
Caso o gerenciador de partida seja instalado no MBR do disco rígido
(boot=/dev/hda), o setor de boot do antigo sistema operacional será
substituído, retire uma cópia do setor de boot para um disquete usando o
comando dd if=/dev/hda of=/floppy/mbr bs=512 count=1
no
GNU/Linux para salvar o setor de boot em um disquete e
dd if=/floppy/mbr of=/dev/hda bs=446 count=1
para
restaura-lo. No DOS você pode usar o comando fdisk
/mbr para criar um novo Master Boot Record.
Após qualquer modificação no arquivo /etc/lilo.conf
, o
comando lilo
deverá ser novamente executado para atualizar o
setor de partida do disco rígido. Isto também é válido caso o kernel seja
atualizado ou a partição que contém a imagem do kernel desfragmentada.
A limitação de 1024 cilindros do Lilo não existe mais a partir da versão 21.4.3 (recomendada, por conter muitas correções) e superiores.
A reinstalação, formatação de sistemas DOS e Windows pode substituir o setor de partida do HD e assim o gerenciador de partida, tornando impossível a inicialização do GNU/Linux. Antes de reinstalar o DOS ou Windows, verifique se possui um disquete de partida do GNU/Linux.
Para gerar um novo boot loader, coloque o disquete na unidade e após o aviso
boot:
ser mostrado, digite linux
root=/dev/hda1
(no lugar de /dev/hda1
você
coloca a partição raiz do GNU/Linux), o sistema iniciará.
Dentro do GNU/Linux, digite o comando
lilo para gerar um novo setor de partida.
Agora reinicie o computador, tudo voltará ao normal.
Esta seção traz opções úteis usadas no arquivo lilo.conf
com explicações sobre o que cada uma faz. As opções estão divididas em duas
partes: As usadas na seção Global e as da seção
Imagens do arquivo lilo.conf
.
Global
backup=[arquivo/dispositivo]
- Copia o setor de partida
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 sendo 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.
install=interface
- Especifica que interface será usada para
exibição de menu com as opções de inicialização ao usuário. As seguintes
opções são permitidas:
text
- Exibe uma mensagem de texto (exibida através do
parâmetro message=) na tela. Esta é a recomendada para
terminais.
menu
- Exibe um menu que lhe permite selecionar através de
uma interface de menu a opção de inicialização. Esta é a padrão.
bmp
- Exibe um bitmap gráfico com a resolução de 640x480 com
16 ou 256 cores.
lba32
- Permite que o LILO quebre o
limite de 1024 cilindros do disco rígido, inicializando o
GNU/Linux em um cilindro acima deste através do acesso .
Note que isto requer compatibilidade com o BIOS, mais especificamente que tenha
suporte a chamadas int 0x13 e AH=0x42. É recomendado o seu uso.
map=arquivo-mapa
- Especifica a localização do arquivo de
mapa (.map
). Se não for especificado,
/boot/map
é usado.
message=arquivo
- Especifica um arquivo que contém uma
mensagem que será mostrada antes do aviso de boot:
. Nenhuma
mensagem é mostrada até que seja pressionada a tecla Shift
após mostrar a palavra LILO
. O tamanho da mensagem deve ser
no máximo 65535 bytes. O arquivo de mapa deve ser novamente criado caso a
mensagem seja retirada ou modificada. Na mensagem, o caracter
FF
(CTRL+L) limpa a tela.
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.
Adicionalmente as opções de imagem do kernel append, ramdisk,
read-only, read-write, root e vga
podem ser especificadas na seção
global. Opções por Imagem
As opções por imagem iniciam com uma das seguintes opções:
image=
, other=
ou
range=
. Opções usadas por cada imagem:
table=dispositivo
- Indica o dispositivo que contém a tabela
de partição para aquele dispositivo. Necessário apenas para imagens
especificadas por other=
.
unsafe
- Não acessa o setor de boot no momento da criação do
mapa. Isto desativa algumas checagens, como a checagem da tabela de partição.
unsafe
e table=
são incompatíveis.
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.
Também podem ser usados parâmetros de inicialização do kernel no arquivo
/etc/lilo.conf
, veja a seção “Parâmetros de inicialização passados ao kernel” para maiores detalhes.
Abaixo um exemplo do arquivo /etc/lilo.conf
que poderá ser
usado em instalações GNU/Linux com o DOS.
boot=/dev/hda1 #Instala o LILO em /dev/hda1 compact install=menu map=/boot/map message=/etc/lilo.message #mensagem que será mostrada na tela default=1 #Carrega a Imagem especificada por label=1 como padrão vga=normal #usa o modo de video 80x25 ao iniciar o Linux delay=20 #aguarda 2 segundos antes de iniciar a imagem padrão lba32 #permite quebrar o limite de 1024 cilindros na inicialização prompt #mostra o aviso de "boot:" logo que o LILO é carregado image=/vmlinuz #especifica o arquivo que contém a primeira imagem root=/dev/hda1 #partição onde a imagem acima esta localizada label=1 #identificação da imagem de disco read-only #monta inicialmente como somente leitura password=12345 #Usa a senha 12345 restricted #somente quando iniciar com o parâmetro single other=/dev/hda2 #especifica outro sistema que será carregado table=/dev/hda #a tabela de partição dele está em /dev/hda label=2 #identificação desta imagem de disco password=12345 #pede a senha antes de iniciar este sistema
Você pode usar o exemplo acima como base para construir sua própria
configuração personalizada do /etc/lilo.conf
mas não se
esqueça de modificar as tabelas de partições para seu sistema. Se você usa o
Windows NT 4.0, Windows NT 5.0 (Windows
2000) ou o OS/2, recomendo ler o
DOS+Windows+OS/2-HOWTO
.
Após criar seu arquivo /etc/lilo.conf
, execute o comando
lilo
e se tudo ocorrer bem, o LILO será
instalado.
Copyright © 1999-2020 - Gleydson Mazioli da Silva