A triple-boot system with GRUB: Debian GNU/Linux “Lenny”, FreeDOS 1.0, and Windows 98SE
Autor original: Terry Hancock
Publicado originalmente no: freesoftwaremagazine.com
Tradução: Roberto Bechtlufft
Computadores remanufaturados para o Natal
Há muitos anos, antes do GRUB, era o LILO que costumava carregar o Linux. Embora o LILO funcionasse bem para carregar o Linux, estava longe de ser um “grande gerenciador de boot unificado” (significado da sigla GRUB, em inglês), e não era fácil configurar um boot duplo com Linux e Windows. Na época eu fiz isso com um programa para DOS/Windows chamado LOADLIN.EXE, que disparava o processo de boot do Linux a partir do ambiente DOS/Windows do computador. Isso com o Windows 3.1, por volta do ano 2000, mais ou menos na época em que comecei a usar Linux. Na época eu tinha configurado um computador para meus filhos dividirem, e embora eles o usassem mais para rodar jogos e aplicativos do Windows, eu queria apresentá-los aos programas do GNU/Linux que eu também estava aprendendo a usar.
O boot duplo não é para principiantes!
Digo isso porque sistemas de boot múltiplo são por natureza mais frágeis, e fazê-los funcionar de maneira confiável exige um alto grau de habilidade, experiência e paciência. Isso não combina com usuários que só estão experimentando o Linux.
Nesse caso, recomendo que você adquira um computador barato para instalar o GNU/Linux – pode ser antigo, como os modelos com mais de dez anos que usei para meus filhos. Eles vão funcionar bem, pois o GNU/Linux tem um design de eficiência notável, com melhor desempenho em hardware antigo do que qualquer sistema proprietário disponível no mercado. Na maioria das vezes vai valer a pena, além de ser bem mais fácil do que tentar instalar um sistema de boot duplo.
Se você não tem como comprar outro computador, recomendo experimentar o GNU/Linux em um “Live CD”. Se gostar, faça um backup do HD e instale o GNU/Linux como sistema principal.
Na minha opinião, o boot múltiplo é útil para pessoas como as da minha família, que usam o GNU/Linux quase que exclusivamente, mas ocasionalmente precisam do Windows para rodar um programa antigo para o qual não vale a pena procurar substituto no Linux. Como não temos nenhuma máquina com o Windows, e não estamos dispostos a desperdiçar uma com ele, ter ao menos uma instalação de boot múltiplo faz sentido.
O sistema que eu tinha era basicamente o DOS/Windows 3.1, com um sistema operacional Linux embutido. Os registros de boot eram controlados pelo DOS, e a única maneira de iniciar o Linux era entrar no DOS e rodar o LOADLIN.EXE. Era meio complicado, e várias coisas podiam dar errado.
Pulando para três meses atrás
Além disso, o menu do GRUB oferece a flexibilidade de configurar uma escolha padrão para o boot, de modo que o computador entre direto no GNU/Linux se você não digitar nada (e geralmente é isso o que meus filhos querem). Para entrar no Windows ou no FreeDOS é só desligar o sistema (pelo menu do KDM ou usando Ctrl-Alt-F1, Ctrl-Alt-Del), reiniciar e escolher a opção adequada durante o processo de boot.
Perdoem-me pelo Windows?
- Para testar a compatibilidade com sistemas de terceiros
- Para usar software proprietário antigo, como jogos
- Para ter compatibilidade com itens de hardware proprietários populares, como os que eu descrevi no artigo “A world of beautiful broken toys” (em inglês)
- Para expor seus filhos a vários sistemas diferentes, evitando que eles fiquem “viciados” em um
- Para mostrar a eles exatamente porquê eu parei de usar o Windows (numa comparação justa, eu acho que nenhuma criança vai preferir o Windows ao GNU/Linux, especialmente se o GNU/Linux for o primeiro sistema que ela aprender a usar).
Boa parte dessas razões também valem para o FreeDOS, com relação aos aplicativos que rodam nele, com a vantagem do FreeDOS ser um sistema operacional livre.
Meu procedimento
0 – Obtendo o software
Eu concluí boa parte do processo de instalação sem conectar os computadores à minha LAN ou à internet, logo a instalação foi baseada em CD-ROMs.
Imagens ISO-9660 dos discos para CD-ROM podem ser baixadas de várias fontes, conforme documentação do site do Debian. Eu usei o ktorrent para baixar minhas imagens de um mirror BitTorrent.
Para obter o FreeDOS não tem mistério: basta ir até o site do FreeDOS. As imagens ISO de disco são hospedadas no iBiblio e estão disponíveis em vários métodos diferentes de distribuição e download. A menor distribuição contém apenas o núcleo do sistema operacional e nada de código fonte, ocupando só 8 MB. Mesmo a instalação completa que traz todos os aplicativos e o código fonte e ainda serve o cafezinho tem apenas 242 MB (ocupando pouco mais de um terço de um CD-ROM comum).
Todas essas imagens de CD-ROM podem ser gravadas em discos CD-R com gravadores de CD (que hoje em dia são muito baratos), por meio de vários pacotes de software diferentes. Eu escolhi o K3B para a tarefa.
Já o Windows 98SE você vai ter que comprar ou encontrar jogado em alguma gaveta velha. Teoricamente, cada computador comprado com o sistema pré-instalado lhe dá o direito legal a uma licença, mas até onde eu sei, fazer uma versão pré-instalada vomitar um CD-ROM instalável é praticamente impossível.
Para piorar, o Windows 98SE usa um disquete de boot. Sim, a tecnologia arcaica que precedeu o CD-ROM inicializável! Talvez você se lembre desses disquetes. Eu perdi o meu faz tempo, e recriar um a partir do CD-ROM e do Windows pré-instalado em um dos HP Pavilions foi um pesadelo que eu não gostaria de ter novamente, e que não vou descrever aqui (o DOS e o DOS “7”, presentes nas entranhas do Windows 98, não contêm drivers para CD-ROMs ATAPI, e por isso um mero FORMAT /S não funciona). Recomendo a você que não perca o disquete de boot. Felizmente, os computadores têm drives de 3.5″, embora nos computadores modernos isso não seja garantido.
1- Instalação do Debian GNU/Linux “Lenny”
1.1- Configuração inicial e instalação
Se o sistema não iniciar pelo CD-ROM, você terá que alterar a seqüência de inicialização no BIOS do sistema. Como isso é feito depende do BIOS. Em um HP Pavilion, mantenha pressionada a tecla F1 enquanto o computador é iniciado. A mensagem “Entering setup” será exibida, e nesse momento você pode soltar a tecla. Os menus do BIOS são completamente específicos para cada modelo de computador, embora haja alguns padrões. Geralmente há um grupo de controles básicos por padrão, e algum método para entrar nos vários submenus. O BIOS do Pavilion tem abas no topo, e uma dela se chama “Boot”. Nela há opções que permitem alterar a seqüência de boot, incluindo CD-ROM, HD, unidades removíveis e rede. Naturalmente, você vai querer o CD-ROM em primeiro – até a hora de instalar o Windows, quando as unidades removíveis devem estar em primeiro lugar. Se quiser, você pode fazer isso agora, desde que não deixe nenhum disquete no drive. O boot vai demorar um pouco mais e fazer um pouco de barulho.
O instalador do Debian será iniciado (a primeira mensagem na tela fala sobre o “ISOLINUX”, um bom indicador de que deu tudo certo). Logo surgirá uma tela com um menu. Escolha “Advanced Options” (Opções Avançadas) e “Expert Install” (Instalação Avançada) no menu.
As primeiras perguntas são sobre o idioma e o código do país. Escolha “Português do Brasil” e “Brasil”.
Ele vai querer “Detectar e montar o CD-ROM”. Isso pode soar estranho, já que você está executando o instalador pelo CD-ROM, mas não se preocupe. O instalador do Debian vai fazer várias perguntas aparentemente redundantes durante o processo, o que por vezes pode até soar engraçado. Não presuma que houve algum erro se o Debian pedir a você que identifique algo explicitamente. O que acontece é que um expert pode querer tirar alguma carta da manga neste momento, e o Debian está dando a chance a ele. Outra explicação é que as mensagens vêm de softwares diferentes chamados pelo instalador, e nem sempre eles compartilham informações.
O instalador também vai perguntar se você está usando armazenamento USB e se deseja “serviços de cartões PC” (placas de expansão para notebooks, por exemplo). Mesmo dizendo “não”, você ainda poderá fornecer as “opções de PCMCIA”; deixe-as em branco. Fique sabendo que, por algum motivo, o menu voltará duas vezes durante o processo de instalação.
A mensagem “A auto-detecção do CD ROM funcionou” avisa que o software não teve problemas para ler o CD-ROM, e isso é bom. Você terá a opção de “Carregar componentes do instalador a partir do CD”. Escolha “cfdisk-udeb”. Não sei se isso é necessário. Trata-se de uma extensão do instalador do Debian para que ele trabalhe com o software de particionamento de disco, que vamos usar. Após esta etapa, ao retornar ao menu de instalação, haverá muito mais opções.
A seguir, “Detectar hardware de rede”. Selecione essa opção e você verá pela segunda vez as opções de “cartão PC”. Responda da mesma maneira. Então virá a configuração da rede. Se estiver instalando offline como eu, você certamente não vai querer a configuração automática com DHCP. Você pode optar entre configurar um endereço IP estático (minha opção) ou deixar a rede desconfigurada até conectar o computador à sua LAN (ou ao roteador de banda larga, ou à sua opção favorita de acesso à internet).
Você também não pode usar o NTP ao configurar o relógio, mas pode configurar a hora e o fuso horário manualmente.
Depois vem “Detectar discos”, e as perguntas sobre PC card aparecem novamente. Finalmente, o particionamento de discos.
1.2 – Particionamento do HD
- O sistema de arquivos “root” (raiz) ou “/” deve ser bem estático, mudando apenas durante instalações importantes; quase todo o seu conteúdo fica em subdiretórios, que podem ser montados em partições separadas. Geralmente as alterações nele são feitas pelo administrador do sistema (que em nosso contexto de LAN familiar, sou eu).
- A partição “/usr” contém informações estáticas, alteradas apenas durante instalações de software. Os usuários normais nunca precisarão gravar nada nela (em alguns sistemas, a unidade inteira é montada como “apenas leitura”, sendo desbloqueada apenas nos procedimentos de instalação).
- A partição “/var” contém informações dinâmicas mantidas sob o controle de serviços de software do computador. De modo geral, o usuário nunca grava nada diretamente nessa partição.
- A partição “/tmp” é usada como cache para informações que não precisem ser mantidas após o reinício do sistema, e que possam ser jogadas fora quando faltar espaço.
- A partição “/home” abriga os preciosos dados dos usuários. Ela deve ser gerenciada por eles, e com muito cuidado.
O instalador do Debian oferece sua própria interface para o processo de particionamento, que é um pouco mais fácil de usar do que o cfdisk (utilitário baseado em curses) ou do que o antigo utilitário fdisk. Obviamente, se você estiver familiarizado com eles, sinta-se à vontade para usá-los.
Com o módulo do instalador do Debian o processo segue desta maneira:
- Selecione “Manual” (nenhuma das opções de particionamento automático serve nesta instalação)
- Selecione o dispositivo
- Defina o tipo de tabela de partições como “msdos”
Depois, para cada partição que você criar:
- Selecione “ESPAÇO LIVRE”
- Crie uma nova partição (“PRIMÁRIA” ou “LÓGICA”)
- Defina o tamanho em GB, MB ou KB
- Escolha o início do do espaço livre
- Defina as opções de criação e montagem do sistema de arquivos
Para as partições do FreeDOS e do Windows temos que seguir regras mais rígidas, devido a limitações em seus drivers de acesso ao disco. O GRUB também tem algumas restrições, que limitam a localização física do diretório /boot/grub no HD. O Linux por si só é extremamente flexível e pode rodar plenamente em partições estendidas, incluindo o swap.
Esta é a tabela de partições que escolhi para um disco rígido de 20 GB:
Partição | Tamanho | Sistema de arquivos | Ponto de montagem |
PRIMÁRIA | |||
hda1 | 1 GB | FAT32 | /windows |
hda2 | 512 MB | FAT16 | /dos |
hda3 | 256 MB | ext2 | / |
LÓGICA | |||
hda5 | 4 GB | FAT32 | /winapps |
hda6 | 256 MB | swap | swap |
hda7 | 512 MB | ext2 | /tmp |
hda8 | 1.5 GB | ext2 | /var |
hda9 | 8 GB | ext2 | /usr |
hda10 | o resto | ext3 | /home |
GRUB. Se não fizer isso, você receberá uma mensagem de erro quando o GRUB tentar iniciar e as coisas vão parar por aí mesmo (aliás, não use links simbólicos no diretório /boot/grub, pode ser que o GRUB não consiga segui-los).
Uma coisa que pode surpreendê-lo é que o software de particionamento irá alterar discretamente os tamanhos para que correspondam à geometria do disco. Por exemplo, “1 GB” geralmente fica por volta de “998 MB”. É possível insistir em tamanhos mais precisos, mas dificilmente vai valer a pena, já que os tamanhos necessários são apenas estimativas.
Note que as partições do Windows e do DOS têm pontos de montagem no GNU/Linux. A instalação do GNU/Linux poderá acessar essas partições, mas tome cuidado ao gravar algo nelas: os sistemas de arquivos do MS-DOS e do Windows possuem limitações quanto aos nomes de arquivos e permissões que podem pegá-lo de calças curtas.
1.3 – Conclusão da instalação do Debian
Resumindo, minhas opções foram:
- Kernel “linux-image-2.6-686” (meus computadores são do tipo Pentium III, ou seja, “686”)
- “Sim” para senhas sombra (eu uso NFS, mas uso NIS na minha LAN, pois prefiro sincronizar as IDs de usuários manualmente, já que elas raramente mudam)
- Criar um usuário normal (será preciso esperar o fim da instalação para criar outros usuários)
- Configurar o gerenciador de pacotes
- Não selecionar as opções que exigem conexão de rede: “espelho de rede”, “atualizações de segurança”, “concurso de popularidade”
- Selecionar “Desktop” e “Padrão” nos perfis do sistema (o HP Pavilion não é um “servidor de email” nem um “laptop”)
- Instalar o GRUB na MBR
- Não configurar uma senha para o GRUB
- Concluir a instalação
- Informar que o relógio do hardware usa o UTC (você pode acertá-lo mais tarde)
Finalmente, você verá a mensagem que começa com “Instalação concluída…”. Remova o CD e reinicie.
1.4 Primeiro boot
Presumindo que o GRUB esteja funcionando bem, você verá duas mensagens durante o boot que indicam que o GRUB está funcionando: “Grub Loading stage1.5” e, logo em seguida, duas linhas abaixo, “GRUB Loading, please wait…”. Se você chegou até aí, o GRUB deve estar legal. Mensagens de erro agora significam que você vai ter que reinstalar o sistema.
Depois disso, segue o menu do GRUB, com opções de boot normal ou “single-user”. Vamos iniciar usando a opção padrão. Se estiver offline, como eu estava, haverá um longo atraso na mensagem “Starting MTA”. É uma tentativa de consulta DNS, que leva um bocado de tempo para desistir.
Se tudo estiver funcionando direito, você chegará a uma tela de login bem simples do KDM com a mensagem “Bem-vindo ao <nome do host>”. Você pode usar a interface do KDE, mas provavelmente será mais rápido dar um Ctrl-Alt-F1 para mudar para um terminal virtual e fazer login como root para cuidar dos últimos ajustes na configuração.
Para resolver o atraso do MTA (já que vamos reiniciar várias vezes), use dpkg-reconfigure exim4-config. Defina a configuração como “somente entrega local”, especifique o domínio e em “Manter o número de pesquisas DNS mínimas (Discagem-sob-Demanda) escolha “Sim”: esse último item vai eliminar o longo atraso na inicialização. Para finalizar, o sistema pergunta se você quer uma “configuração dividida”. Honestamente, não faz diferença, escolha o padrão, a não ser que tenha algum motivo pessoal para fazer diferente.
1.5 Configuração do GRUB
Este é o meu arquivo /boot/grub/menu.lst, trazendo só o essencial:
timeout 5
title Debian GNU/Linux
unhide (hd0,0)
unhide (hd0,1)
root (hd0,2)
kernel /boot/vmlinuz-2.6.24-1-686 root=/dev/hda3 ro
initrd /boot/initrd.img-2.6.24-1-686
title Windows 98SE
unhide (hd0,0)
hide (hd0,1)
rootnoverify (hd0,0)
chainloader +1
makeactive
title FreeDOS 1.0
unhide (hd0,0)
unhide (hd0,1)
rootnoverify (hd0,1)
chainloader +1
makeactive
title Debian (single-user)
unhide (hd0,0)
unhide (hd0,1)
root (hd0,2)
kernel /boot/vmlinuz-2.6.24-1-686 root=/dev/hda3 ro single
initrd /boot/initrd.img-2.6.24-1-686
As coisas mais “mágicas” por aqui provavelmente são os comandos “hide” e “unhide“, que dizem ao GRUB para tornar certas partições visíveis ou invisíveis para o BIOS. Eles se encarregam de tornar as partições visíveis ou invisíveis a programas que usam o BIOS para acessar o disco. Precisamos disso para o Windows e o DOS, porque eles não sabem como lidar com o fato de não ocuparem a primeira partição do HD. Logo, os comandos hide fazem com que eles pareçam ocupar a primeira partição quando são iniciados.
Naturalmente, usamos o unhide para revelar essas mesmas partições quando queremos iniciar o GNU/Linux, para que tenhamos acesso normal a todas elas. Após algumas experiências, descobri que com o FreeDOS eu também não preciso esconder as partições.
Já o comando chainloader passa o controle ao registro de boot das próprias partições para iniciar o sistema operacional em questão. Acho que o comando rootnoverify é usado para pular a busca por um executável Linux válido (obviamente, os gerenciadores de boot do Windows e do DOS não o são). E estou usando makeactive só para seguir algumas orientações comuns, já que não sei para quê serve.
2- Instalação do FreeDOS 1.0
O programa de instalação do FreeDOS é ainda mais redundante que o instalador do Debian, e você vai ter que apertar um monte de botões que aparentemente não servem a propósito algum.
- Selecione “1” para continuar o boot pelo CD
- Selecione “1” novamente para instalar o FreeDOS no HD
- Selecione “Português” (a não ser que queira um idioma diferente)
- Selecione a unidade “E:” como destino (ela provavelmente corresponde a /dev/hda2)
- Selecione “1” novamente para continuar com a instalação do FreeDOS
- Selecione “1” para iniciar a instalação do “FreeDOS 1.0 final”
Depois você terá que aceitar os diretórios para a instalação: de X:FREEDOSPACKAGES a E:FDOS. Será apresentada uma lista de grupos de pacotes a serem instalados. Se não quiser instalar o código fonte, desmarque todos os pacotes que comecem por “src_”.
A seguir, marque e desmarque os pacotes individuais que quiser, e leve o cursor até “DONE” para prosseguir. As perguntas dependem dos pacotes selecionados, mas como eu instalei essencialmente tudo, aqui vão algumas das minhas escolhas:
- Packet driver? Yes.
- Configure via DHCP or manual? Escolha “2” para manual (seja rápido, pois há um curto limite de tempo aqui).
- Mail server? Pressione enter para não instalar nenhum.
- Email user-id? Pressione enter de novo.
Depois de algumas perguntas e algumas mensagens informativas, você chegará a um prompt de DOS comum, assim:
O FreeDOS não corrompe sua instalação do GRUB, e você pode reiniciar com ele.
3 – Instalação do Windows 98SE
Para começar, reinicie o computador e selecione “Windows 98SE”. O Windows ainda não está instalado, mas isso vai disparar os comandos hide, preparando o sistema para a instalação do Windows. Depois que o sistema retornar ao menu do GRUB (que é o que ele faz se não encontrar nenhum sistema operacional), insira o disquete de boot do Windows 98SE no drive de 3.5″ e reinicie.
Enquanto os testes do BIOS estiverem em execução, insira o CD-ROM do Windows 98SE. Você será levado a um prompt de comandos do DOS. Os drivers de CD-ROM devem estar instalados, e uma mensagem indicará qual letra foi atribuída à unidade de CD-ROM (do contrário, você pode descobrir no chute mesmo).
Embora talvez não seja necessário, cai bem fazer uma formatação de alto nível na nova partição do Windows. A partição seria /dev/hda1 na terminologia Linux, mas o Windows chama de C:. Para formatar, digite FORMAT C: /S pelo disquete de boot. A formatação me ajudou a evitar problemas quando eu tinha uma instalação do FreeDOS na partição /dev/hda1.
Digite “F:” (por exemplo) para navegar rumo ao CD-ROM de instalação do Windows. Depois digite “dir” para listar o diretório raiz do CD. Dentre outras coisas, você verá um executável chamado “SETUP.EXE“. Digite “setup” para executá-lo.
A primeira coisa que ele faz é rodar o “scandisk” (um desfragmentador de disco) nas unidades que encontrar. Depois ele inicia a instalação em si. Você terá que clicar que aceita o EULA (o infame contrato de licença da Microsoft que nossos leitores “adoram”). A seguir, digite a chave de produto, que está impressa na embalagem. Obviamente, trata-se de uma proteção contra cópia, devido a essa idéia antinatural de vender cópias de software como se fossem objetos físicos.
Confirme o diretório de destino “C:WINDOWS“. Depois de selecionar “instalação personalizada” eu adicionei “Temas de Área de Trabalho”. Não há motivo para não incluir tudo num disco desse tamanho.
Nesse momento, o instalador cria outro disco de boot (agora ele facilita as coisas).
O instalador reinicia o computador. Observe que desta vez o Windows entra direto. O Windows sobrescreveu a MBR, levando o GRUB junto. Já esperávamos por isso.
Depois de passar por alguns testes automáticos e de talvez ter que reiniciar o computador mais uma vez, a instalação do Windows estará concluída. Ao redefinir a hora no Windows, lembre-se de usar o UTC (ou GMT), como especificado na instalação do Debian.
4 Restauração do GRUB
Voilá! Boot Triplo
Isso conclui a parte técnica da instalação. As coisas ainda estão um pouco frias, mas no próximo artigo vou descrever como personalizei esses sistemas com gráficos, textos e sons interessantes.
Créditos a freesoftwaremagazine.com
Tradução por Roberto Bechtlufft <roberto at bechtranslations.com>
Deixe seu comentário