4.3. Preparar Ficheiros para iniciar a partir de pen USB

Para preparar a pen USB, nós recomendamos utilizar um sistema onde GNU/Linux já esteja a correr e onde seja suportado USB. Com os sistemas GNU/Linux atuais a pen USB deverá ser automaticamente reconhecida quando a inserir. Caso contrário deverá verificar se o módulo do kernel usb-storage está carregado. Quando a pen USB for inserida, será mapeada para um dispositivo chamado /dev/sdX, onde X é uma letra a-z. Deverá ser capaz de ver para qual o dispositivo onde a pen USB foi mapeada ao executar o comando lsblk antes e depois de a inserir. (A saída de dmesg (como root) é outro método possível para isso). Para escrever na sua pen, poderá ter de desligar o botão de proteção de escrita.

[Atenção] Atenção

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

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

As imagens de instalação de Debian para esta arquitetura são criadas utilizando a tecnologia isohybrid; isto significa que podem ser escritas diretamente para uma pen USB, que é uma forma muito fácil para fazer um meio de instalação. Simplesmente escolha uma imagem (tal como netinst, CD, DVD-1) que caiba na sua pen USB. Veja a Secção 4.1, “Imagens de instalação oficiais de Debian GNU/Linux” para obter uma imagem de instalação.

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

A imagem de instalação que escolher deve ser escrita diretamente para a pen USB, sobrescrevendo o seu conteúdo atual. Por exemplo, ao utilizar um sistema GNU/Linux existente, o ficheiro da imagem pode ser escrito para uma pen USB conforme se segue, depois de se ter assegurado que a pen foi desmontada:

# cp debian.iso /dev/sdX
# sync

Pode ser encontrada informação sobre como fazer isto noutros sistemas operativos no Debian CD FAQ.

[Importante] Importante

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

[Importante] Importante

Escrever simplesmente a imagem de instalação para a pen USB desta forma deve funcionar bem para a maioria dos utilizadores. As outras opções abaixo são mais completas, especialmente para pessoas com necessidades mais especializadas.

A imagem híbrida não ocupa todo o espaço de armazenamento na pen, por isso pode valer a pena considerar utilizar o espaço livre para colocar ficheiros de firmware, 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.

Para o fazer, utilize cfdisk ou qualquer outra ferramenta de particionamento para criar uma partição adicional na pen. Depois crie um sistema de ficheiros (FAT) na partição, monte-o e copie ou desempacote o firmware para lá, por exemplo com:

# mkdosfs -n FIRMWARE /dev/sdX3
# mount /dev/sdX3 /mnt
# cd /mnt
# tar zxvf /path/to/firmware.tar.gz
# cd /
# umount /mnt

Assegure-se que usa o nome correto do dispositivo para a sua pen USB. O comando mkdosfs está contido no pacote dosfstools de Debian

[Nota] Nota

Se escolheu que mini.iso seja escrito para a pen USB, a segunda partição não tem que ser criada, porque já estará presente. Retirar e 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

Antes de ser utilizada a tecnologia isohybrid para as imagens de instalação de Debian, eram utilizados os métodos documentados nos capítulos abaixo para preparar media para arrancar a partir de dispositivos USB. Foi suplantada pela técnica em Secção 4.3.1, “Preparar uma pen USB utilizando uma imagem híbrida de CD/DVD”, mas ainda assim foi deixado aqui por motivos educacionais e históricos e para o caso de ser útil a algum utilizador.

Uma alternativa ao método descrito em Secção 4.3.1, “Preparar uma pen USB utilizando uma imagem híbrida de CD/DVD” é copiar manualmente os ficheiros do instalador, e também uma imagem de instalação para a pen. Note que a pen USB deverá ter pelo menos 1 GB de tamanho (são possíveis configurações mais reduzidas utilizando os ficheiros de netboot, seguindo 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.

[Nota] Nota

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 voltar a utilizar para um propósito diferente.

Simplesmente extraia esta imagem diretamente 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); veja Secção 4.1, “Imagens de instalação oficiais de Debian GNU/Linux” para o fazer. 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 quiser apenas saber o que se está a passar, pode utilizar o método seguinte 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, até mesmo uma imagem de DVD.

4.3.3.1. Particionando e acrescentar um gestor de arranque

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

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

Primeiro, tem de instalar no seu sistema os pacotes syslinux e mtools.

[Nota] Nota

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

# mkdosfs /dev/sdX1

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

Tendo agora uma pen USB corretamente particionada, necessita colocar syslinux na partição FAT16 com:

# syslinux /dev/sdX1

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

4.3.3.2. Acrescentar os ficheiros do instalador

Existem duas variantes diferentes de instalação para escolher aqui: a variante hd-media necessita de um ficheiro ISO de instalação na pen, para carregar a partir de lá os módulos do instalador e o sistema base. O instalador netboot no entanto irá carregar tudo a partir de um mirror Debian.

De acordo com a sua escolha, tem de descarregar alguns ficheiros do instalador a partir dos subdiretórios hd-media ou netboot de debian/dists/bookworm/main/installer-amd64/current/images/ em qualquer mirror Debian:

  • vmlinuz ou linux (binário do kernel)

  • initrd.gz (imagem ramdisk inicial)

Pode escolher entre a versão em modo de texto (os ficheiros podem ser encontrados diretamente em hd-media ou netboot) ou pela versão gráfica (procure nos respectivos subdiretórios gtk) do instalador.

De seguida monte a partição (mount /dev/sdX1 /mnt) e copie os ficheiros descarregados para o directório raiz da pen.

De seguida deverá criar um ficheiro texto chamado syslinux.cfg no directório raiz da pen como ficheiro de configuração para o syslinux, que no mínimo deve conter a seguinte linha:

default vmlinuz initrd=initrd.gz

Altere o nome do binário do kernel para linux se usou ficheiros netboot.

Para o instalador gráfico (de gtk) deve acrescentar vga=788 no final da linha. Podem ser acrescentados outros parâmetros se for desejado.

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

Se utilizou ficheiros de hd-media, agora deve copiar o ficheiro ISO de uma imagem de instalação de Debian para a pen. (Para a variante netboot isto não é necessário.)

Pode utilizar ou uma imagem netinst ou uma imagem de CD completa (veja Secção 4.1, “Imagens de instalação oficiais de Debian GNU/Linux”). Assegure-se que escolhe uma que caiba na pen. Tenha em conta que a imagem netboot mini.iso não é utilizável para este propósito.

Quando terminar, desmonte a pen USB (umount /mnt).



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