Sommario:

Avvio USB Ubuntu Raspberry Pi 4 (nessuna scheda SD): 9 passaggi
Avvio USB Ubuntu Raspberry Pi 4 (nessuna scheda SD): 9 passaggi

Video: Avvio USB Ubuntu Raspberry Pi 4 (nessuna scheda SD): 9 passaggi

Video: Avvio USB Ubuntu Raspberry Pi 4 (nessuna scheda SD): 9 passaggi
Video: Raspberry Pi 4B в корпусе Argon ONE M.2 c SSD диском 128 ГБ, собираем сервер для Home Assistant 2024, Novembre
Anonim
Avvio USB Ubuntu Raspberry Pi 4 (nessuna scheda SD)
Avvio USB Ubuntu Raspberry Pi 4 (nessuna scheda SD)

Le istruzioni sono di seguito e ti guideranno all'avvio del Raspberry Pi 4 senza una scheda SD.

Se non vuoi seguire i passaggi, ci sono immagini predefinite sul post originale. Basta eseguire il flashing di queste immagini su un'unità USB e sei a posto (a patto che tu disponga di una EEPROM che supporti l'avvio USB - passaggio 3)

Forniture

Lampone Pi 4

SSD USB o unità flash

Passaggio 1: scarica Ubuntu per Raspberry Pi dal sito Ubuntu

Scarica l'immagine Ubuntu per raspberry pi 4 dal sito Web ufficiale di Ubuntu.

ubuntu.com/download/raspberry-pi

Passaggio 2: scrivi l'immagine su disco USB

Flash l'immagine su un'unità USB. Può essere una chiavetta USB o un'unità SSD USB. Consiglierei di usare Balena Etcher su Windows e MacOS. Se stai usando Ubuntu, l'Image Writer integrato funzionerà perfettamente.

www.balena.io/etcher/

Passaggio 3: aggiorna la EEPROM di Raspberry Pi

Per questo passaggio, ci sono diversi passaggi secondari. Se hai già aggiornato la EEPROM di Raspberry Pi alla versione "stabile", puoi saltare questo passaggio.

Innanzitutto, devi scrivere l'immagine RaspberryPiOS (https://www.raspberrypi.org/downloads/raspberry-pi-os/) su una scheda SD.

In secondo luogo, avvia il Raspberry Pi e modifica il file /etc/default/rpi-eeprom-update digitando

sudo nano /etc/default/rpi-eeprom-update

e cambia la voce "FIRMWARE_RELEASE_STATUS" da critico a stabile.

Terzo, corri

sudo rpi-eeprom-update -a

dal terminale e consentire il completamento dell'aggiornamento.

Vedi https://www.raspberrypi.org/documentation/hardware/raspberrypi/booteeprom.md per ulteriori dettagli se ne hai bisogno

Passaggio 4: aggiorna il firmware di Raspberry Pi

Scarica i file del firmware aggiornati dal sito github di raspberry pi (https://github.com/raspberrypi/firmware/tree/master/boot).

Copia tutti i file *.dat e *.elf nella partizione di avvio di Ubuntu sul driver USB con l'immagine di Ubuntu dal passaggio 2. (Sovrascrivi i file che erano lì in precedenza)

Passaggio 5: decomprimere il kernel

Il bootloader Raspberry Pi 4 non può acquisire un'immagine del kernel compressa. Devi decomprimerlo manualmente prima del tuo primo avvio.

Per farlo su Linux, apri la partizione di avvio di Ubuntu USB ed esegui

zcat vmlinuz > vmlinux

dal terminale.

Puoi farlo su Windows usando 7-zip ed estraendo il file vmlinuz. Assicurati di rinominare il file estratto in vmlinux.

Passaggio 6: aggiorna il file Config.txt

Il file config.txt ha le opzioni di avvio per le varie schede RaspberryPi. Aggiorna le informazioni per Raspberry Pi 4. Sostituisci la sezione per [pi4] con quanto segue:

[pi4]max_framebuffers=2 dtoverlay=vc4-fkms-v3d boot_delay kernel=vmlinux initramfs initrd.img followkernel

Passaggio 7: creare uno script di decompressione automatica

Durante un aggiornamento a Ubuntu oa uno dei suoi numerosi pacchetti, apt creerà una nuova immagine del kernel. Questa immagine verrà compressa e impedirà l'avvio del Raspberry Pi dopo l'aggiornamento. Per risolvere questo problema, è necessario creare uno script per decomprimere le nuove immagini del kernel dopo gli aggiornamenti.

Crea uno script chiamato auto_decompress_kernel nella partizione di avvio. Questo può essere fatto con la maggior parte degli editor di testo. In Linux, consiglierei nano o Atom, in Windows consiglierei Atom (Nota per gli utenti Windows che utilizzano Text Edit, assicurati di rimuovere l'estensione del file "TXT". In caso contrario, questo non funzionerà). Lo script dovrebbe contenere il seguente codice:

#!/bin/bash -e

#Set Variables BTPATH=/boot/firmware CKPATH=$BTPATH/vmlinuz DKPATH=$BTPATH/vmlinux #Verifica se è necessario eseguire la compressione. if [-e $BTPATH/check.md5]; quindi se md5sum --status --ignore-missing -c $BTPATH/check.md5; then echo -e "\e[32mI file non sono cambiati, decompressione non necessaria\e[0m" exit 0 else echo -e "\e[31mHash fallito, il kernel verrà compresso\e[0m" fi fi #Backup del vecchio decompresso kernel mv $DKPATH $DKPATH.bak if [! $? == 0]; then echo -e "\e[31mBACKUP DEL KERNEL DECOMPRESSO FALLITO!\e[0m" exit 1 else echo -e "\e[32mBackup del kernel decompresso riuscito\e[0m" fi #Decomprimere il nuovo kernel echo "Decomprimere il kernel: " $CKPATH"………….." zcat $CKPATH > $DKPATH if [! $? == 0]; then echo -e "\e[31mKERNEL NON È RIUSCITO A DECOMPRESSARE!\e[0m" exit 1 else echo -e "\e[32mKernel decompresso con successo\e[0m" fi #Hash il nuovo kernel per controllare md5sum $CKPATH $DKPATH > $BTPATH/check.md5 if [! $? == 0]; then echo -e "\e[31mMD5 GENERATION FAILED!\e[0m" else echo -e "\e[32mMD5 generato con successo\e[0m" fi #Exit exit 0

Passaggio 8: crea un altro script

Affinché lo script appena creato venga chiamato ogni volta che viene installato un pacchetto, è necessario creare un altro script.

Questo script deve essere creato all'interno del filesystem di Ubuntu. Se stai eseguendo questa configurazione su un sistema Linux, puoi eseguire questa parte prima del tuo primo avvio, se sei su Windows o MacOS, dovrai farlo dopo il primo avvio.

Crea questo script nella directory /etc/apt/apt.conf.d/ e chiamalo 999_decompress_rpi_kernel

sudo nano /etc/apt/apt.conf.d/999_decompress_rpi_kernel

Il codice dovrebbe essere:

DPkg::Post-Invoke {"/bin/bash /boot/firmware/auto_decompress_kernel"; };

Una volta creato questo, sarà necessario rendere eseguibile lo script. Questo può essere fatto utilizzando il seguente codice:

sudo chmod +x /etc/apt/apt.conf.d/999_decompress_rpi_kernel

Passaggio 9: goditi Ubuntu sul Raspberry Pi 4

Ora puoi avviare Ubuntu su un'unità abilitata USB.

Consigliato: