Boot USB no raspberry Pi 4
Hoje trago um tutorial para fazer o arranque do sistema operativo no raspberry pi 4 via USB, que recentemente esta funcionalidade foi adicionada pela Raspberry Foundation.
Quais são as vantagens desta funcionalidade, face ao boot já existente via cartão micro SD? São várias, desde que não ficamos limitados apenas a um cartão, mas sim abrimos a possibilidade a um arranque via dispositivo USB, tal como uma simples pen, ou um disco externo. Com esta possibilidade podemos optar por exemplo por um disco externo SSD, que vai aumentar drasticamente a velocidade do vosso raspberry quando usam em modo desktop ou server, tal como optei por aplicar no meu raspberry, e posso garantir que notam a diferença na velocidade, especialmente se usarem um disco SSD com USB 3.0 ou 3.1 com a tecnologia UASP. Este tutorial apenas foi testado no 4, apesar que o boot USB também ser possível no Raspberry Pi 3.
Antes de começarem o tutorial, apesar de a funcionalidade já se encontrar no estado “estável”, fica o aviso que podem danificar o vosso raspberry pi pois irão necessitar de atualizar o vosso firmware, e qualquer erro pode ser irreversível, estando assim pela vossa conta e risco.
How to Boot Raspberry Pi 4 from USB
1. Primeiro, irão necessitar de um cartão micro SD para todo o processo, tendo obrigatoriamente de ter um sistema operativo instalado, como por exemplo o Raspberry Pi OS, que foi o que usei..
2. Teremos que começar por atualizar o sistema para a última versão:
sudo apt update sudo apt full-upgrade
3. É necessário editar o ficheiro localizado no diretório /etc/default/rpi-eeprom-update e mudar o valor “critical” para “stable” no campo FIRMWARE_RELEASE_STATUS. Podes editar usando o Nano, com o seguinte comando:
Sudo nano /etc/default/rpi-eeprom-update
Depois de fazeres a mudança, carrega CTRL+X para sair. Carrega no Y ou S (depende se está em Português ou Inglês) para garantir que gravou.
4. Aqui começa o risco de ter um pisa papeis :), temos de instalar o novo bootloader mais recente (poderá haver uma versão superior à abaixo):
sudo rpi-eeprom-update -d -f /lib/firmware/raspberrypi/bootloader/stable/pieeprom-2020-07-16.bin
5. É necessário reiniciar manualmente.
6. Verificar a versão do bootloader para garantir que a atualização foi feita corretamente, com o seguinte comando:
vcgencmd bootloader_version vcgencmd bootloader_config
Deverás ver que o firmware mais recente é da data de 16 de Julho (versão estável com suporte USB Boot).
7. Aqui começa uma pequena dor de cabeça dependendo da distro que vamos usar no Raspberry Pi 4. Se tens a versão de 4 ou 8Gb, provavelmente irás optar por uma distro a 64bits, contudo o suporte ainda não é o melhor, como por exemplo o Kodi oficial não possui versão a 64 bits para arquitetura ARM, e também surge o problema que nem todas as distros estão ainda preparadas para um boot USB, ao qual te recomendo vivamente que optes pelo Raspberry Pi OS (32/64bits) pois já está com os ficheiros boot preparados para esta funcionalidade.
8. Podes usar a ferramenta oficial do Raspberry Pi Imager para criar diretamente o teu USB Boot como eu fiz, ou então copiar o teu cartão micro SD já existente para o teu USB Boot Pen ou SSD com a ferramente SD Card Copier.
9. Este passo poderá ser opcional dependendo da distro usada e se a instalação é nova ou copiada de outro disco/cartão. Se usares o mais recente Raspberry Pi OS instalado de novo, não foi necessário no meu caso. No caso do Linux Ubuntu Mate, nem sequer funcionou este método, mas verifiquei que resolveu os problemas de boot de outras distros. Caso verifiques problemas no arranque do sistema operativo, copia todos os ficheiros terminados em .dat ou .elf da pasta boot já existente ou de um firmware atual do Github do Raspberry Pi no cartão micro SD que tinhas a anterior distro instalada, e substitui os ficheiros existentes na nova instalação da distro na raiz do disco USB.
10. Desliga o raspberry pi, remove o cartão e ligue o disco USB apenas.
Neste momento, deverás conseguir fazer boot do novo sistema operativo no teu raspberry pi 4. Mantém presente que um disco externo consome bem mais energia que um cartão, e a corrente disponível nas portas USB é limitada, ao qual recomento usar um disco externo com alimentação independente.