Arquivos históricos do BR-Linux.org apresenta:

Linux in Brazil (Dicas Linux )

Dual-Boot - NT e Linux

Esta dica diz respeito à instalação do Linux de forma a conviver com o Windows NT em uma mesma máquina, mas usando o próprio boot manager do NT como seletor de sistema operacional. Ele foi contribuído por Marco André Lopes Mendes (marco@sociesc.com.br) e por Eduardo da Silva (eduardo@sociesc.com.br), e Linux in Brazil agradece!

Resumo

A crescente popularidade do Linux criou uma nova geração de usuários que querem rodar suas distribuições favoritas do Linux juntamente com o NT. O LILO, o Linux Loader, manuseia o boot do Linux. Embora você possa usar truques para inicializar o boot loader do NT a partir do LILO, muitos usuários do Linux que implementam multiboot entre sistemas operacionais Linux e NT usam um utilitário de gerenciamento de terceiros ou uma opção LILO dentro do boot loader do NT.

Para implementar uma configuração multiboot Linux e NT, você deve instalar o Linux numa partição de sua escolha e instalar o LILO de preferência no primeiro setor da partição Linux (i.e., o superblock), ao invés de na MBR (Master Boot Record) . Se você gravar o LILO dentro da MBR, você sobrescreveria o setor de boot do NT desabilitando desta forma o boot loader. Após instalar o LILO, você precisa adicioná-lo no menu boot loader do NT através da criação de um arquivo com o setor de boot do Linux (muitos usuários preferem chamar esse arquivo de bootsect.lnx, mas nem o NT e nem o Linux, requerem esse nome) e adicionar uma referência a esse arquivo no boot.ini.

Como o LOADER do NT Trabalha

O NT OS Loader gosta de ter o setor de boot de um outro sistema operacional disponível em um arquivo. Ele lê esse arquivo e inicia o sistema operacional selecionado, por examplo, um outro Windows NT em uma forma diferente de execução ou um outro Sistema Operacional.

Dicas para instalar o Windows NT e o Linux no mesmo Sistema

1. Instalação do Windows NT

Você deve tentar instalar o Windows NT primeiro. Se você quer usar NTFS para sua partição Windows NT, tenha em mente, que somente a partir do kernel 2.2.x existe suporte a NTFS, e ainda assim, somente para leitura [Nota do editor: já existe também o acesso para escrita nas versões mais recentes do kernel]. Você deve criar uma partição FAT separada para troca de dados ou usar disquetes formatados com padrão DOS.

2. Instalação do linux

A instalação do Linux deve ser feita normalmente, apenas atentando para o fato de que o disquete de inicialização do Linux deve ser criado.

Quando você chegar à seção LILO, especifique sua partição root do Linux como sendo seu dispositivo de boot porque o Master Boot Record (MBR) de seu disco rígido pertence ao Windows NT. Isso significa que a entrada do root e a entrada de boot em seu /etc/lilo.conf têm o mesmo valor. Se você tem um disco rígido IDE e sua partição Linux está na segunda partição, seu entrada de boot (boot-entry) no /etc/lilo.conf deve ser isso:

boot=/dev/hda2

Se você tem dois discos rígidos e seu Linux está na na primeira partição do segundo disco, sua entrada de boot no /etc/lilo.conf deve ser isso:

boot=/dev/hdb1

Inicialize o Linux com o disquete de inicialização criado na instalação. Se tudo correu bem, você conseguirá entrar no Linux. Lembre-se que neste momento o boot através do NT ainda não é possível.

Inicialize o sistema e escolha o Windows NT. Se você não conseguir iniciar o Windows NT agora, você tem um problema. Espero que tenha criado um disco de reparação de emergência recentemente.

A Parte Linux do Trabalho

Você tem que iniciar através de um disquete até que a parte NT esteja concluída.

Agora você tem que retirar o setor de boot da partição root do Linux. Com /dev/hda2 com sua partição Linux, o comando dd é:

dd if=/dev/hda2 of=/bootsect.lnx bs=512 count=1

Se o seu bootsect.lnx possui mais de 512 bytes você tem um problema.

Agora copie o arquivo bootsect.lnx para um disquete formatado com padrão DOS se essa for a sua maneira de transferir arquivos para a partição do Windows NT.

Você pode copiar com:

mcopy /bootsect.lnx a:

ou com:

mount -t msdos /dev/fd0 /mnt
cp /bootsect.lnx /mnt
umount /mnt

Uma forma mais direta, e que funciona se você possui o Windows NT numa partição FAT é executar os comandos abaixo, supondo que o Windows NT esteja em /dev/hda1:

mount -t vfat /dev/hda1 /mnt
dd if=/dev/hda2 of=/mnt/bootsect.lnx bs=512 count=1

Com isto o arquivo já é gerado dentro do partição FAT onde queremos colocá-lo.

A Parte Windows NT do trabalho

Copie o arquivo do disquete para c:\bootsect.lnx. Nem explicarei como fazer isso.

O que o lilo.cnf é para o Linux o c:\boot.ini é para o Windows NT. Remova os atributos de somente leitura e sistema antes de modificá-lo, com:

C:\attrib -s -r c:\boot.ini

Agora altere o arquivo boot.ini com um editor, por exemplo o bloco de notas, para o seguinte:

   [boot loader]

timeout=30

default=multi(0)disk(0)rdisk(0)partition(1)\WINNT

[operating systems]

multi(0)disk(0)rdisk(0)partition(1)\WINNT="Windows NT Workstation"...

multi(0)disk(0)rdisk(0)partition(1)\WINNT="Windows NT Workstation"...

C:\bootsect.lnx="Linux"

Apenas a última linha deve ser adicionada nesse exemplo. Restaure os atributos após você salvar o arquivo boot.ini com:

C:\attrib +s +r c:\boot.ini
Após desligar e reiniciar o Windows NT deverá aparecer a seguinte tela:

OS Loader V4.00

Por favor selecione o sistema operacional para iniciar Windows NT Workstation Versão 4.0 Windows NT Workstation Versão 4.0 (Modo VGA) Linux

Selecione o LINUX e veja:

LILO loading zImage

Refazendo o arquivo bootsect.lnx

Uma nova cópia do arquivo bootsect.lnx deve ser transferida para c:\bootsect.lnx sempre que o setor de boot de sua partição Linux for modificado. Isso acontece, por exemplo quando você instala um novo kernel com lilo.

Deve-se observar também que o arquivo bootsect.lnx é único para cada sistema, não sendo possível criá-lo num sistema e copiá-lo para outros. Ele deve ser criado em cada sistema.

Resolução de Problemas

Se as coisas não foram como esperado, cheque a inicialização do Linux com um disquete. Com /dev/hda2 como sua partição Linux, seu /etc/lilo.conf tem as seguintes entradas:

root=/dev/hdb1
boot=/dev/fd0

Rode o LILO com um disquete. Agora tente iniciar através do disquete. Se seu Linux no /dev/hda2 não conseguir iniciar, o OS Loader do NT também falhará ao iniciar. Se o disquete iniciar sua partição Linux, você pode retirar seu setor de boot para o NT OS Loader com:

dd if=/dev/fd0 of=/bootsect.lnx bs=512 count=1

Você pode manter esse disquete como sendo seu "disco de recuperação" apenas para o caso de seu NT OS Loader parar de funcionar.

Conclusão

Esta forma de boot múltiplo entre Windows NT e Linux é interessante nos casos em que se quer manter o NT como o Sistema Operacional principal, inicializando o Linux eventualmente. Sistemas usados para suporte, desenvolvimento simultâneo nas duas plataformas, testes de compatibilidade de softwares, treinamentos e cursos são exemplos de situações em que poderá se utilizar este esquema. Usuários domésticos que queiram avaliar ou mesmo utilizar os dois produtos também podem se aproveitar disto. È certo que o Windows NT é uma alternativa muito mais estável e robusta ao Windows 9x.

O Boot Loader pode ser configurado para utilizar o Linux como o Sistema Operacional padrão, isto é, aquele que será inicializado se o usuário não escolher nenhum passado o tempo de espera. Para isto, basta alterar no arquivo boot.ini do exemplo a seguinte linha:

default=c:\bootsect.lnx

Para desabilitar a escolha automática de um dos Sistemas Operacionais, altere a seguinte linha:

timeout=-1

Feedback

Qualquer dúvida, comentário correção ou sugestão é bem-vinda. Outras formas de múltiplas inicializações entre NT, Linux e outros Sistemas Operacionais são também de grande interesse.

Referências

NT OS Loader + Linux mini-HOWTO

Sean Daily. Guidelines for configuring and managing a multi-OS environment. Windows NT Magazine. Julho de 1999. Páginas 62-70.

[ << Som on-board ] [ Impressoras >> ]


O Arquivo Histórico do BR-Linux.org mantém no ar (sem alteração, exceto quanto à formatação) notícias, artigos e outros textos publicados originalmente no site na segunda metade da década de 1990 e na primeira década do século XXI, que contam parte considerável a história do Linux e do Open Source no Brasil. Exceto quando indicado em contrário, a autoria dos textos é de Augusto Campos, e os termos de uso podem ser consultados na capa do BR-Linux.org. Considerando seu caráter histórico, é provável que boa parte dos links estejam quebrados, e que as informações deste texto estejam desatualizadas.