4.3. Preparando os arquivos para a inicialização usando um pendrive USB

Há dois métodos de instalação possíveis quando você está inicializando a partir de um pendrive USB. O primeiro é instalar completamente a partir da rede. O segundo é copiar também uma imagem de CD do pendrive USB e usá-la como origem para os pacotes, possivelmente em combinação com um espelho. O segundo método é mais comum.

Para o primeiro método de instalação você terá que baixar uma imagem de instalação do diretório netboot (no local mencionado em Seção 4.2.1, “Onde encontrar as imagens de instalação”) e usar o método flexível, explicado abaixo, para copiar os arquivos para o pendrive USB.

Imagens de instalação para o segundo método de instalação podem ser encontradas no diretório hd-media e tanto o método fácil quanto o método flexível podem ser usados para copiar a imagem para o pendrive USB. Para este método de instalação você também precisará baixar uma imagem de CD. A imagem de instalação e a imagem do CD devem ser baseadas na mesma versão do debian-installer. Se as versões não combinarem você provavelmente encontrará erros[4] durante a instalação.

Para preparar um pendrive USB, você precisará de um sistema no qual o GNU/Linux já esteja sendo executado e que tenha suporte a USB. Com os sistemas GNU/Linux atuais o pendrive USB deveria ser reconhecido automaticamente quando você inserí-lo. Se isso não acontecer, você deveria verificar se o módulo usb-storage do kernel está carregado. Quando o pendrive USB é inserido, ele será mapeado como um dispositivo chamado /dev/sdX, onde X é uma letra no intervalo a-z. Você deverá ser capaz de ver para qual dispositivo o pendrive USB foi mapeado executando o comando dmesg após inserí-lo. Para escrever em seu pendrive, você pode ter que desligar a chave de proteção de escrita.

[Atenção] Atenção

Os procedimentos descritos nesta seção destruirão qualquer coisa que já esteja no dispositivo! Tenha bastante certeza de que você está usando o nome do dispositivo correto para seu pendrive USB. Se você usar o dispositivo errado, pode ser que o resultado seja a perda de toda a informação, por exemplo, de um disco rígido.

Note que pendrive USB deverá ter pelo menos 256MB de tamanho (é possível usar tamanhos menores, se você seguir os passos descritos em Seção 4.3.2, “Copiando os arquivos — o método flexível”).

4.3.1. Copiando os arquivos — o método fácil

Existe um arquivo tudo em um chamado hd-media/boot.img.gz que contém todos os arquivos do instalador (incluindo o kernel) bem como o syslinux e seu arquivo de configuração.

Note que, embora conveniente, este método possui uma grande desvantagem: o tamanho lógico do dispositivo será limitado a 256 MB, mesmo que a capacidade do seu pendrive USB seja maior. Você terá que reparticionar o seu pendrive USB e criar um novo sistema de arquivos para ter de volta toda a sua capacidade se você quiser usá-lo para algum outro propósito. A segunda desvantagem é que você não pode copiar uma imagem de CD inteira no pendrive USB, somente as pequenas imagens businesscard ou netinst CD

Para usar esta imagem simplesmente extraia-a diretamente em seu pendrive USB:

# zcat boot.img.gz > /dev/sdX

Após isso, monte o pendrive USB (mount /dev/sdX /mnt), que agora terá um sistema de arquivos FAT dentro dele e copie a imagem ISO netinst ou businesscard do Debian para lá. Desmonte o pendrive USB (umount /mnt) e você terá concluído.

4.3.2. Copiando os arquivos — o método flexível

Se você quiser mais flexibilidade ou apenas deseja saber o que está acontecendo, você deverá usar o método a seguir para colocar os arquivos no seu pendrive. Uma vantagem de usar este método é que — se a capacidade do seu pendrive USB for grande o suficiente — você tem a opção de copiar uma imagem ISO de CD inteiro para ele.

4.3.2.1. Particionando o pendrive USB

Nós mostraremos como configurar um pendrive para usar a primeira partição ao invés de todo o dispositivo.

[Nota] Nota

Como a maioria dos dispositivos pendrive USB vêm pré-configurados com uma única partição FAT16, você provavelmente não precisará reparticionar ou reformatar o pendrive. Se tiver que fazer isto, use o cfdisk ou qualquer outra ferramenta de particionamento para criar uma partição FAT16[5]e então crie o sistema de arquivos usando:

# mkdosfs /dev/sdX1

Tome o cuidado de usar o nome de dispositivo correto para o pendrive USB. O comando mkdosfs está no pacote Debian dosfstools.

Para iniciar o kernel após a inicialização do pendrive USB, nós precisaremos colocar um gerenciador de inicialização no pendrive. Embora qualquer gerenciador de inicialização (e.g. lilo) deva funcionar, é conveniente usar o syslinux pois ele usa uma partição FAT16 e pode ser reconfigurado apenas editando um arquivo texto. Qualquer sistema operacional que ofereça suporte a sistema de arquivos FAT poderá ser usado para fazer alterações na configuração do gerenciador de inicialização.

Para colocar o syslinux em uma partição FAT16 de seu pendrive USB, instale os pacotes syslinux e mtools em seu sistema e execute:

# syslinux /dev/sdX1

Novamente, tome o cuidado de usar o nome de dispositivo correto. A partição não deverá estar montada ao iniciar o syslinux. Este processo grava um setor de inicialização na partição e cria um arquivo ldlinux.sys que contém o código do gerenciador de inicialização.

4.3.2.2. Adicionando a imagem do instalador

Monte a partição (mount /dev/sdX1 /mnt) e copie os seguintes arquivos de imagem do instalador para o pendrive:

  • vmlinuz ou linux (binário do kernel)

  • initrd.gz (imagem inicial ramdisk)

Você pode escolher entre a versão tradicional ou a versão gráfica do instalador. A última pode ser encontrada no subdiretório gtk. Se você quer renomear os arquivos, por favor, note que o syslinux só pode processar nomes de arquivos DOS (8.3).

Na sequência, você deverá criar um arquivo de configuração syslinux.cfg que, no mínimo, deverá conter as duas linhas a seguir (mude o nome do binário do kernel para linux se você usou uma imagem netboot):

default vmlinuz
append initrd=initrd.gz

Para o instalador gráfico você deverá adicionar vga=788 à segunda linha.

Se você usou uma imagem hd-media, agora você deverá copiar uma imagem ISO do Debian[6] no pendrive. Quando você tiver terminado, desmonte o pendrive USB (umount /mnt).

4.3.3. Inicialização através do pendrive USB

[Atenção] Atenção

Se seu sistema se recusar a inicializar a partir do pendrive USB, o pendrive pode conter um Registro Mestre de Inicialização (MBR — Master Boot Record). Para corrigir isto, use o comando install-mbr que vem no pacote mbr:

# install-mbr /dev/sdX



[4] A mensagem de erro que possivelmente será exibida é que os módulos do kernel não foram encontrados. Isto significa que a versão dos udebs de módulos do kernel incluídos na imagem do CD é diferente da versão do kernel sendo executado.

[5] Não esqueça de marcar a partição como inicializável (bootable flag).

[6] Você pode usar uma imagem businesscard, netinst ou CD (veja Seção 4.1, “Conjunto oficial de CD-ROMs do Debian GNU/Linux”). Certifique-se de optar por uma que caiba. Note que a imagem netboot mini.iso não é usável para este propósito.