4.3. Preparar Ficheiros para iniciar a partir de USB Memory Stick

Para preparar o stick USB você irá necessitar dum sistema GNU/Linux que já esteja em funcionamento e onde seja suportado USB. Em sistemas GNU/Linux actuais a pen USB deve ser reconhecida automaticamente quando a inserir. Se não for o caso deve verificar se o módulo usb-storage está carregado. Quando a pen for inserida será mapeada para um dispositivo chamado /dev/sdX, onde X é uma letra na gama a-z. Deverá ser capaz de ver para qual dispositivo foi a 'pen' USB mapeada correndo o comando dmesg depois de a inserir. Para escrever para a sua 'pen', poderá ter de desligar o botão de protecção de escrita.

[Atenção] Atenção

Os procedimentos descritos nesta secção irão destruir tudo o que já esteja no dispositivo! Assegure-se que utiliza o nome correcto do dispositivo para a sua 'pen' USB. Se utilizar o dispositivo errado o resultado poderá ser que toda a informação no, por exemplo, disco rígido seja perdida.

4.3.1. Preparar uma pen USB utilizando uma imagem híbrida de CD ou DVD

As imagens em CD e DVD de Debian podem agora ser escritas directamente para uma pen USB, que é uma forma muito fácil para fazer uma pen USB de arranque. Simplesmente escolha uma imagem de CD ou DVD (tal como a netinst, CD-1, DVD-1, ou netboot) que caiba na sua pen USB. Veja Secção 4.1, “Conjuntos Oficiais de CDs/DVDs Debian GNU/Linux” para obter a imagem de CD ou de DVD.

Em alternativa, para pens USB muito pequenas, com apenas alguns megabytes de tamanho, pode obter a imagem mini.iso a partir do directório netboot (no local mencionado em Secção 4.2.1, “Onde Encontrar Imagens de Instalação”).

A imagem de CD ou de DVD que escolher deve ser escrita directamente para a pen USB, sobreescrevendo o seu conteúdo actual. Por exemplo, ao utilizar um sistema GNU/Linux existente, o ficheiro da imagem de CD ou de DVD pode ser escrito para uma pen USB conforme se segue, depois de se ter assegurado que pen foi desmontada:

# cp debian.iso /dev/sdX
# sync

Pode ser encontrada sobre como fazer isto noutros sistemas operativos nas Debian CD FAQ.

[Importante] Importante

A imagem tem que ser escrita para um dispositivo de disco inteiro e não para uma partição, e.g. /dev/sdb e não para /dev/sdb1. Não utilize ferramentas como o unetbootin que alterem a imagem.

[Importante] Importante

Escrever simplesmente a imagem de CD ou de DVD para a pen USB desta forma deve resultar para a maioria dos utilizadores. As outras opções abaixo são mais completas, e orientadas para pessoas com necessidades mais especializadas.

A imagem híbrida na pen não ocupa todo o espaço de armazenamento, por isso pode valer a pena considerar utilizar o espaço livre para colocar ficheiros de firmware ou pacotes ou quaisquer outros ficheiros à sua escolha. Isto pode ser útil se possuir apenas uma pen ou se quiser ter tudo o que necessita num dispositivo.

Criar, na pen, uma segunda partição FAT, montar a partição e copiar ou desempacotar o firmware para lá. Por exemplo:

# mount /dev/sdX2 /mnt
# cd /mnt
# tar zxvf /path/to/firmware.tar.gz
# cd /
# umount /mnt

Poderá ter escrito o mini.iso para a pen USB. Neste caso a segunda partição não tem de ser criada e já estará presente. Retirar a voltar a colocar a pen USB deverá tornar as duas partições visíveis.

4.3.2. Copiar manualmente os ficheiros para a pen USB

Uma forma alternativa para preparar a sua pen USB é copiar manualmente os ficheiros do instalador, assim como uma imagem de CD para a pen. Note que a pen USB deverá ter no mínimo 1 GB de tamanho (são possíveis configurações mais reduzidas se seguir a Secção 4.3.3, “Copiar ficheiros manualmente para a pen USB — a forma flexível”).

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

Note que, embora conveniente, este método tem uma grande desvantagem: a capacidade lógica do dispositivo será limitada a 1 GB, mesmo que a capacidade da pen USB seja maior. Terá de reparticionar a pen USB e criar sistema de ficheiros novos para obter novamente toda a capacidade se alguma vez a quiser utilizar para um propósito diferente.

Para utilizar esta imagem simplesmente extraia-a directamente para a sua 'pen' USB:

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

Depois disso, monte a pen USB (mount /dev/sdX /mnt, que terá agora um sistema de ficheiros FAT , e copie para lá uma imagem ISO Debian (netinst ou CD completo). Desmonte a pen (umount /mnt) e já está.

4.3.3. Copiar ficheiros manualmente para a pen USB — a forma flexível

Se gostar de mais flexibilidade ou se apenas quiser saber o que se está a passar, pode utilizar o seguinte método para colocar os ficheiros na sua 'pen'. Uma vantagem da utilização deste método é que — se a capacidade da sua 'pen' USB tiver espaço suficiente — tem a opção de copiar para lá qualquer imagem ISO, mesmo uma imagem de DVD.

4.3.3.1. Particionar a 'pen' USB

Iremos demonstrar como preparar o memory stick para utilizar a primeira partição, em vez de todo o dispositivo.

[Nota] Nota

Dado que a maioria das 'pens' USB vêm preconfiguradas com uma única partição FAT16, provavelmente não terá reparticionar ou reformatar a 'pen'. Se de qualquer forma tiver de o fazer, utilize o cfdisk ou qualquer outra ferramenta de particionamento para criar uma partição FAT16[3], instalar um MBR utilizando:

# install-mbr /dev/sdX

O comando install-mbr faz parte do pacote Debian mbr. De seguida criar o sistema de ficheiros:

# mkdosfs /dev/sdX1

Certifique-se de que utiliza o nome correcto do dispositivo para a sua 'pen' USB. O comando mkdosfs está no pacote Debian dosfstools.

Com o intuito de iniciar o kernel após arrancar a partir da 'pen' USB, nós iremos colocar o gestor de arranque na 'pen'. Apesar de qualquer gestor de arranque deva funcionar (por exemplo o lilo), é conveniente utilizar o syslinux, dado que utiliza uma partição FAT16 e pode ser reconfigurado apenas editando um ficheiro de texto. Qualquer sistema operativo que suporte um sistema de ficheiros FAT pode ser utilizado para fazer alterações à configuração do gestor de arranque.

Para colocar o syslinux na partição FAT16 da sua 'pen' USB, instale os pacotes syslinux e mtools no seu sistema, e faça:

# syslinux /dev/sdX1

Mais uma vez certifique-se de que utiliza o nome correcto do dispositivo. A partição não pode estar montada quando iniciar o syslinux. Este procedimento escreve um sector de arranque para a partição e cria o ficheiro ldlinux.sys que contém o código do gestor de arranque.

4.3.3.2. Acrescentar a imagem do instalador

Monte a partição (mount /dev/sdX1 /mnt) e copie os seguintes ficheiros de imagens do instalador para a 'pen':

  • vmlinuz ou linux (binário do kernel)

  • initrd.gz (imagem ramdisk inicial)

Pode escolher entre a versão normal ou a versão em modo de texto do instalador. A última pode ser encontrada no subdirectório gtk. Se quiser renomear os ficheiros, note que o syslinux apenas consegue processar nomes de ficheiros DOS (8.3).

De seguida deverá criar um ficheiro de configuração syslinux.cfg o qual, no mínimo, deve conter as seguintes linhas (mude o nome do binário do kernel para linux se utilizou uma imagem netboot):

default vmlinuz initrd=initrd.gz

Para o instalador gráfico deve acrescentar vga=788 à linha. Podem ser acrescentados outros parâmetros conforme for desejado.

Para activar a prompt de arranque para permitir acrescentar mais parâmetros, acrescente uma linha prompt 1.

Se utilizou uma imagem hd-media, deve agora copiar o ficheiro ISO de uma imagem ISO Debian[4] para a pen, desmonte a pen USB (umount /mnt).



[3] Não se esqueça de definir a flag de arranque bootable.

[4] Pode utilizar uma imagem de CD netinst ou de CD completo (veja Secção 4.1, “Conjuntos Oficiais de CDs/DVDs Debian GNU/Linux”). Assegure-se que escolhe uma que cabe. Tenha em conta que a imagem netboot mini.iso não é utilizável para este propósito.