Bootando CDROM com Grub/Lilo

Iniciado por Dimas, 14 de Agosto de 2007, 02:07

tópico anterior - próximo tópico

Dimas

Bootando CDROM com o grub / lilo
Autor: José Roberto <jose.rob.jr at gmail.com>
Data: 13/07/2007

Porque não usar a BIOS

Imagine a situação, você instalou e configurou um sistema operacional de fácil instalação, o Debian por exemplo, ficou uma semana mudando tudo, deixou a sua cara. Então você esquece o CD do Debian dentro da unidade e sai pra trabalhar de manhã, enquanto você trabalha o seu filho, que estuda de tarde, resolve jogar aquele joguinho, encontra a tela do Debian e sai apertando enter. Quando você chega e vai finalizar aquele trabalho que você estava fazendo durante duas semanas e encontra uma partição ext3 vazia e uma swap no lugar do seu sistema operacional...

Para evitar casos assim estou criando este artigo.

Ele também vai te servir caso sua BIOS não tenha a opção de boot pelo CD-ROM, e você não quer, ou não pode, usar disquetes.

Ingredientes
O grub não é capaz de inicializar um CD-ROM se ele não estiver dentro dele, o mesmo acontece com o lilo. Por isso existe um gerenciador de boot capaz inicializar um CD a partir de um disquete. Nós vamos precisar dele.

Você pode baixar a imagem deste gerenciador no site do Slackware:

    * http://slackware.at/data/


Link direto:

http://slackware.at/data/slackware-current/isolinux/sbootmgr/sbootmgr.dsk

Como não gostamos de disquetes, vamos precisar do syslinux. Ele é um kernel capaz de iniciar gerenciadores de boot de disquetes.

Você pode usar a sua instalação do syslinux ou baixar o kernel em um dos sites:

    * http://www.lrz-muenchen.de/~bernhard/memdisk.bin
    * http://www.4shared.com/file/19422757/a5cc69a6/memdisk.html


Site oficial: http://syslinux.org/

Caso os links estejam off-line, você pode baixá-los do link abaixo:

http://boot-cd-with-grub-or-lilo.4shared.com/

Você também vai precisar do grub ou do lilo, se você usa outro gerenciador de boot você pode tentar adaptar o que é feito aqui no seu.

Site oficial do grub:

    * http://www.gnu.org/software/grub/


Site oficial do lilo:

    * http://lilo.go.dyndns.org



Configurando o grub

Agora que já temos o que precisamos, vamos a configuração. Se você não usa o grub então pule para a página 3.

Copie os dois arquivos (memdisk.bin e sbootmgr.dsk) para a instalação do grub em /boot/grub:

# cp memdisk.bin /boot/grub
# cp sbootmgr.dsk /boot/grub

Descubra qual é o apelido que o grub dá a sua partição:

# grub grub> find /boot/grub/sbootmgr.dsk

Ele vai mostrar o apelido que ele dá a unidade, guarde-o. Saia do grub:

grub> quit

Para uma maior segurança eu recomendo usar uma senha para acessar o CD-ROM, e para evitar de deixar sua senha visível você pode fazer uma criptografia segura, sem chances de desfazê-la.

Para isso digite:

# grub-md5-crypt
[digite uma senha]
[repita a senha]

Isso vai gerar uma código com 32 caracteres, guarde-o.

Abra o arquivo de configuração do grub. Na versão que eu estou usando ele se encontra em /boot/grub/menu.lst, mas eu li em alguns lugares que as versões mais novas vão ter o nome de grub.config, então tente um, se não for tente o outro.

# vi /boot/grub/menu.lst

Vá até o final com Page Down, aperte A para inserir texto.

Adicione a configuração abaixo, substituindo o XXX por aquele apelido que o grub dá (incluindo os parênteses) e YYY pelo código gerado da senha:

# CDROM
title = CDROM
root = XXX
kernel = XXX/boot/grub/memdisk.bin
initrd = XXX/boot/grub/sbootmgr.dsk
password = --md5 YYY
lock

Se você não quiser usar senha remova as linhas password e lock.

Agora aperte ESC e digite: :wq (dois pontos, dáblio, que)

Isso vai salvar o arquivo e sair.


Configurando o LILO

Se você já configurou com o grub então não precisa fazer com o lilo, pule pra página 4. Se você não usa o lilo também, então veja o que é feito aqui e adapte para o teu. =)

Agora que já temos o que precisamos vamos a configuração.

Copie os dois arquivos (memdisk.bin e sbootmgr.dsk) para o diretório /boot:

# cp memdisk.bin /boot
# cp sbootmgr.dsk /boot

Tire a permissão de leitura do arquivo lilo.conf dos usuários não-root:

# chmod 600 /etc/lilo.conf

Abra o lilo.conf:

# vi /etc/lilo.conf

Vá até o final com Page Down e insira a configuração abaixo, modificando XXX pela partição onde está o seu sistema (ex: hda5) e 123456 por uma senha (se não quiser usar senha remova a linha password)

aperte A para inserir texto

# CD-ROM
image = /boot/memdisk.bin
   root = /dev/XXX
   initrd = /boot/sbootmgr.dsk
   password = 123456
   label = CD-ROM

agora aperte ESC e digite: :wq (dois pontos, dáblio, que)

Isso vai salvar o arquivo e sair.

Certifique-se de que todos as partições que estão no arquivo lilo.conf estão montadas e salve as alterações com o comando abaixo:

# lilo


Finalizando

Reinicie o computador e aperte DEL quando ele estiver ligando para entrar na BIOS.

Vá até a sessão responsável pelo boot de desative o boot com o CD-ROM, deixando o HD em primeiro lugar.



Depois disso crie uma senha para poder acessar a BIOS, isso vai tornar seu computador ainda mais seguro.

Vá até a sessão responsável pela senha e crie uma.



Agora quando precisar iniciar do CD você espera o grub carregar e seleciona CD-ROM.



Digita sua senha, seleciona CD-ROM de novo.

Se ele fizer alguma pergunta digite "y".



E você vai dar boot no CD de forma segura até em computador que a BIOS não suporta.


http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=6851
Dimas Gabriel
digabriel[at]gmail.com

"Liberdade é a questão, a única e exclusiva questão."