Snagboot, odličan uslužni program za vraćanje i flešovanje ugrađenih uređaja

snagboot

Snagboot je alat za oporavak otvorenog koda.

bootlin (kompanija specijalizovana za Linux za ugrađene sisteme), dao do znanja prije nekoliko dana snagboot launch, dizajniran za vraćanje i flešovanje ugrađenih uređaja koji su prestali da se dižu, na primjer, zbog oštećenja firmvera.

snagboot Rođen je zato što većina ugrađenih platformi pruža USB ili UART interfejse za oporavak i prijenos boot slika u slučaju oštećenja firmvera, ali ova sučelja jesu specifično za svaku platformu i zahtijevaju korištenje uslužnih programa za oporavak povezanih s proizvodima pojedinačnih proizvođača.

Kako bi riješio ovaj problem, Bootlin sa zadovoljstvom danas objavljuje novi alat za oporavak i ažuriranje, nazvan Snagboot, koji je namijenjen da bude generička zamjena otvorenog koda za alate specifične za dobavljače spomenute gore.

O Snagbootu

Snagboot djeluje kao analog specijaliziranih uslužnih programa, uglavnom vlasnici, za vraćanje i ažuriranje uređaja, kao što su STM32CubeProgrammer, SAM-BA ISP, UUU i sunxi-fel.

snagboot dizajniran je za rad sa širokim spektrom ploča i ugrađenih uređaja, što eliminiše potrebu za programerima ugrađenih sistema da nauče detalje korišćenja različitih uslužnih programa.

Na primjer, prva verzija snagboot-a može se koristiti za oporavak uređaja baziranih na ST STM32MP1, Microchip SAMA5, NXP i.MX6/7/8, Texas Instruments AM335x, Allwinner SUNXI i Texas Instruments AM62x SoC.

Postoje neki alati koji iskorištavaju ovu funkcionalnost za brz oporavak i ažuriranje preko USB-a, kao što su STM32CubeProgrammer, SAM-BA ili UUU. Međutim, svi ovi alati su specifični za dobavljača, što znači da programeri koji rade na više vrsta platformi moraju se prebacivati ​​između različitih alata i naučiti kako koristiti svaki od njih.

Spominje se da Snagboot uključuje dva uslužna programa za preuzimanje i ažuriranje:

  1. snagrecover- Koristi mehanizme ROM koda specifične za proizvođača da inicijalizira eksternu RAM memoriju i pokrene U-Boot bootloader bez promjene sadržaja trajne memorije.
  2. snagflash- Interagira sa pokrenutim U-Boot-om da flešuje sliku sistema u nepromenljivu memoriju koristeći DFU (Ažuriranje firmvera uređaja), UMS (USB Mass Storage) ili Fastboot.

Za one koje zanima da saznam više o tomeImajte na umu da je Snagboot kod napisan u Pythonu i da je otvorenog koda pod GPLv2 licencom.

Kako instalirati Snagboot na Linux?

Za one koji su zainteresirani da mogu instalirati Snagboot na svoj sistem, trebali bi to znati Možete to učiniti prilično lako. Trebali bi instalirati samo potrebne ovisnosti kako kasnije ne bi imali problema.

Prvi je libhidapi koji se može instalirati na sljedeći način (ovisno o vašoj distribuciji). Oni samo moraju otvoriti terminal i u njega će upisati:

Debian / Ubuntu

sudo apt install libhidapi-hidraw0

Ili također možete instalirati:

sudo apt install libhidapi-libusb0

Arch Linux (iako se može instalirati i sa AUR-a, pogledajte naredbu za instalaciju ispod)

sudo pacman -S hidapi

RHEL/Fedora

sudo dnf -y install hidapi

Kada se ovo uradi, sve što treba da uradite je da instalirate Snagboot sa pip i da to uradite, samo ukucajte sledeću naredbu:

python3 -m pip install --user snagboot

Konačno, morat ćemo samo dodati udev pravila tako da snagrecover ima pristup za čitanje i pisanje na USB uređaje ciljnog SoC-a:

snagrecover --udev > 80-snagboot.rules
sudo cp 80-snagboot.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules
sudo udevadm trigger

I spremni s tim možete početi raditi s ovim alatom. U slučaju korisnika Arch Linuxa, kao što je već spomenuto, alat se može instalirati direktno iz AUR-a i za to samo moraju imati omogućeno spremište i instaliran AUR čarobnjak.

Naredba za instaliranje alata je:

yay -S snagboot

Na kraju, ali ne i najmanje važno, za one koji više vole da kompajliraju sami, samo pokrenite sljedeće:

git klon https://github.com/bootlin/snagboot.git

cd snagboot
./install.sh

Što se tiče priručnika i uputa za upotrebu, sve ove informacije možete pogledati u sledeći link.


Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.