Spisu treści:

Rozruch USB Raspberry Pi 4 Ubuntu (bez karty SD): 9 kroków
Rozruch USB Raspberry Pi 4 Ubuntu (bez karty SD): 9 kroków

Wideo: Rozruch USB Raspberry Pi 4 Ubuntu (bez karty SD): 9 kroków

Wideo: Rozruch USB Raspberry Pi 4 Ubuntu (bez karty SD): 9 kroków
Wideo: Dell Wyse 3040 - cienki klient prawie jak Raspberry Pi 4B 2024, Grudzień
Anonim
Rozruch USB Raspberry Pi 4 Ubuntu (bez karty SD)
Rozruch USB Raspberry Pi 4 Ubuntu (bez karty SD)

Instrukcje znajdują się poniżej i poprowadzą Cię do uruchamiania Raspberry Pi 4 bez karty SD.

Jeśli nie chcesz postępować zgodnie z instrukcjami, w oryginalnym poście znajdują się gotowe obrazy. Po prostu sflashuj te obrazy na dysk USB i gotowe (o ile masz pamięć EEPROM obsługującą uruchamianie z USB - krok 3)

Kieszonkowe dzieci

Raspberry Pi 4

Dysk SSD lub pendrive

Krok 1: Pobierz Ubuntu dla Raspberry Pi z witryny Ubuntu

Pobierz obraz Ubuntu dla raspberry pi 4 z oficjalnej strony Ubuntu.

ubuntu.com/download/raspberry-pi

Krok 2: Zapisz obraz na dysku USB

Prześlij obraz na dysk USB. Może to być pamięć USB lub dysk SSD USB. Polecam używanie Baleny Etcher na Windows i MacOS. Jeśli używasz Ubuntu, wbudowany Image Writer będzie działał dobrze.

www.balena.io/etcher/

Krok 3: Zaktualizuj EEPROM Raspberry Pi

W tym kroku istnieje kilka podetapów. Jeśli zaktualizowałeś już EEPROM Raspberry Pi do wersji „stabilnej”, możesz pominąć ten krok.

Najpierw musisz zapisać obraz RaspberryPiOS (https://www.raspberrypi.org/downloads/raspberry-pi-os/) na kartę SD.

Po drugie, uruchom Raspberry Pi i edytuj plik /etc/default/rpi-eeprom-update, wpisując

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

i zmień wpis "FIRMWARE_RELEASE_STATUS" z krytycznego na stabilny.

Po trzecie, biegnij

sudo rpi-eeprom-aktualizacja -a

z terminala i poczekaj na zakończenie aktualizacji.

Zobacz https://www.raspberrypi.org/documentation/hardware/raspberrypi/booteeprom.md, aby uzyskać więcej informacji, jeśli ich potrzebujesz

Krok 4: Zaktualizuj oprogramowanie układowe Raspberry Pi

Pobierz zaktualizowane pliki oprogramowania sprzętowego ze strony github raspberry pi (https://github.com/raspberrypi/firmware/tree/master/boot).

Skopiuj wszystkie pliki *.dat i *.elf na partycję rozruchową Ubuntu na sterowniku USB z flashowanym obrazem Ubuntu z kroku 2. (Zastąp pliki, które tam były wcześniej)

Krok 5: Rozpakuj jądro

Bootloader Raspberry Pi 4 nie może pobrać skompresowanego obrazu jądra. Musisz ręcznie zdekompresować to przed pierwszym uruchomieniem.

Aby to zrobić w systemie Linux, otwórz partycję rozruchową Ubuntu USB i uruchom

zcat vmlinuz > vmlinux

z terminala.

Możesz to zrobić w systemie Windows za pomocą 7-zip i wyodrębniając plik vmlinuz. Tylko pamiętaj, aby zmienić nazwę wyodrębnionego pliku na vmlinux.

Krok 6: Zaktualizuj plik Config.txt

Plik config.txt zawiera opcje uruchamiania dla różnych płyt RaspberryPi. Zaktualizuj informacje dla Raspberry Pi 4. Zastąp sekcję [pi4] następującym:

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

Krok 7: Utwórz skrypt automatycznej dekompresji

Podczas aktualizacji do Ubuntu lub jednego z wielu jego pakietów, apt utworzy nowy obraz jądra. Ten obraz zostanie skompresowany i spowoduje, że Raspberry Pi nie uruchomi się po aktualizacji. Aby to naprawić, należy utworzyć skrypt, który rozpakuje nowe obrazy jądra po aktualizacji.

Utwórz skrypt o nazwie auto_decompress_kernel na partycji rozruchowej. Można to zrobić za pomocą większości edytorów tekstu. W Linuksie poleciłbym nano lub Atom, w Windows poleciłbym Atom (Uwaga dla użytkowników Windows korzystających z edycji tekstu, pamiętaj o usunięciu rozszerzenia pliku „TXT”. Jeśli nie, to nie zadziała). Skrypt powinien zawierać następujący kod:

#!/bin/bash -e

#Ustaw zmienne BTPATH=/boot/firmware CKPATH=$BTPATH/vmlinuz DKPATH=$BTPATH/vmlinux #Sprawdź, czy należy wykonać kompresję. if [-e $BTPATH/check.md5]; wtedy if md5sum --status --ignore-missing -c $BTPATH/check.md5; then echo -e "\e[32mPliki nie uległy zmianie, dekompresja nie jest potrzebna\e[0m" exit 0 else echo -e "\e[31mHash nie powiodła się, jądro zostanie skompresowane\e[0m" fi fi #Utwórz kopię zapasową starej zdekompresowanej kernel mv $DKPATH $DKPATH.bak if [! $? == 0]; then echo -e "\e[31mDEKOMPRESOWANA KOPIA ZAPASOWA JĄDRA NIEUDANA!\e[0m" exit 1 else echo -e "\e[32mZdekompresowana kopia zapasowa jądra powiodła się\e[0m" fi #Rozpakuj nowe jądro echo "Dekompresowanie jądra: " $CKPATH"………….." zcat $CKPATH > $DKPATH if [! $? == 0]; then echo -e "\e[31mKERNEL NIE MOŻNA DEKOMPRESOWAĆ!\e[0m" exit 1 else echo -e "\e[32mKernel Zdekompresowano pomyślnie\e[0m" fi #Zahaszuj nowe jądro w celu sprawdzenia sumy md5 $CKPATH $DKPATH > $BTPATH/check.md5 jeśli [! $? == 0]; then echo -e "\e[31mMD5 GENEROWANIE NIEUDANE!\e[0m" else echo -e "\e[32mMD5 wygenerowane pomyślnie\e[0m" fi #Wyjście wyjście 0

Krok 8: Utwórz kolejny skrypt

Aby skrypt, który właśnie utworzyliśmy, był wywoływany za każdym razem, gdy pakiet jest instalowany, musimy utworzyć inny skrypt.

Ten skrypt należy utworzyć w systemie plików Ubuntu. Jeśli robisz tę konfigurację w systemie Linux, możesz wykonać tę część przed pierwszym uruchomieniem, jeśli korzystasz z systemu Windows lub MacOS, będziesz musiał to zrobić po pierwszym uruchomieniu.

Utwórz ten skrypt w katalogu /etc/apt/apt.conf.d/ i nazwij go 999_decompress_rpi_kernel

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

Kod powinien być:

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

Po utworzeniu tego skryptu będziesz musiał uczynić skrypt wykonywalnym. Można to zrobić za pomocą następującego kodu:

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

Krok 9: Ciesz się Ubuntu na Raspberry Pi 4

Teraz możesz uruchomić Ubuntu na dysku obsługującym USB.

Zalecana: