Snagboot, et utmerket verktøy for å gjenopprette og flashe innebygde enheter

snagboot

Snagboot er et gjenopprettingsverktøy med åpen kildekode.

bootlin (et selskap som spesialiserer seg på Linux for innebygde systemer), gjort det kjent flere dager siden snagboot lansering, designet for å gjenopprette og flashe innebygde enheter som har sluttet å starte opp, for eksempel på grunn av korrupsjon av fastvare.

snagboot Det er født fordi de fleste av de innebygde plattformene gir USB- eller UART-grensesnitt for gjenoppretting og overføring av oppstartsbilder i tilfelle fastvarekorrupsjon, men disse grensesnittene er det spesifikke for hver plattform og krever bruk av gjenopprettingsverktøy knyttet til individuelle produsenters produkter.

For å løse dette problemet, er Bootlin glad for å slippe et nytt gjenopprettings- og oppdateringsverktøy i dag, kalt Snagboot , som er ment å være en generisk åpen kildekode-erstatning for de leverandørspesifikke verktøyene nevnt ovenfor.

Om Snagboot

Snagboot fungerer som en analog av spesialiserte verktøy, for det meste eiere, for å gjenopprette og oppdatere enheter, slik som STM32CubeProgrammer, SAM-BA ISP, UUU og sunxi-fel.

snagboot er designet for å fungere med et bredt spekter av brett og innebygde enheter, som eliminerer behovet for utviklere av innebygde system for å lære inn og ut av bruk av forskjellige verktøy.

For eksempel kan den første versjonen av snagboot brukes til å gjenopprette enheter basert på ST STM32MP1, Microchip SAMA5, NXP i.MX6/7/8, Texas Instruments AM335x, Allwinner SUNXI og Texas Instruments AM62x SoC.

Det er noen verktøy som drar nytte av denne funksjonaliteten for å tilby rask gjenoppretting og oppdatering over USB, for eksempel STM32CubeProgrammer , SAM-BA eller UUU . Imidlertid er disse verktøyene alle leverandørspesifikke, noe som betyr at utviklere som jobber på flere typer plattformer må bytte mellom ulike verktøy og lære å bruke hver enkelt.

Det nevnes at Snagboot inkluderer to verktøy for å laste ned og oppdatere:

  1. snagrecover- Bruker leverandørspesifikke ROM-kodemekanismer for å initialisere ekstern RAM og kjøre U-Boot bootloader uten å endre innholdet i permanent minne.
  2. snagblits- Samhandler med en kjørende U-Boot for å flashe et systembilde til ikke-flyktig minne ved hjelp av DFU (Device Firmware Update), UMS (USB Mass Storage) eller Fastboot.

For de som er interessert i å vite mer om detVær oppmerksom på at Snagboots kode er skrevet i Python og er åpen kildekode under GPLv2-lisensen.

Hvordan installere Snagboot på Linux?

For de som er interessert i å kunne installere Snagboot på systemet sitt, bør de vite det Du kan gjøre det ganske enkelt. De bør bare installere de nødvendige avhengighetene for ikke å få problemer senere.

Den første er libhidapi som kan installeres som følger (avhengig av distribusjonen din). De må bare åpne en terminal og i den skal de skrive:

Debian / Ubuntu

sudo apt install libhidapi-hidraw0

Eller du kan også installere:

sudo apt install libhidapi-libusb0

Arch Linux (selv om det også kan installeres fra AUR, se installasjonskommandoen nedenfor)

sudo pacman -S hidapi

RHEL/Fedora

sudo dnf -y install hidapi

Når dette er gjort, er alt du trenger å gjøre å installere Snagboot med pip og for å gjøre dette, skriv bare inn følgende kommando:

python3 -m pip install --user snagboot

Til slutt må vi bare legge til udev-reglene slik at snagrecover har lese- og skrivetilgang til USB-enhetene til mål-SoC-ene:

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

Og klar med det kan du begynne å jobbe med dette verktøyet. Når det gjelder Arch Linux-brukere, som nevnt før, kan verktøyet installeres direkte fra AUR og for dette trenger de bare å ha depotet aktivert og ha en AUR-veiviser installert.

Kommandoen for å installere verktøyet er:

yay -S snagboot

Sist men ikke minst, for de som foretrekker å kompilere på egen hånd, bare kjør følgende:

git-klone https://github.com/bootlin/snagboot.git

cd snagboot
./install.sh

Når det gjelder bruksanvisninger og bruksanvisninger, kan du se all denne informasjonen i følgende link.


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.