önyükleme (gömülü sistemler için Linux konusunda uzmanlaşmış bir şirket), bilinir kıldı birkaç gün önce budala lansmanı, örneğin bellenim bozulması nedeniyle önyüklemeyi durduran gömülü aygıtları geri yüklemek ve flaşlamak için tasarlanmıştır.
budala Gömülü platformların çoğunun USB veya UART arabirimleri sağlaması nedeniyle doğar. üretici yazılımının bozulması durumunda önyükleme görüntülerinin kurtarılması ve aktarılması için, ancak bu arabirimler her platforma özel ve bireysel üreticilerin ürünleriyle ilişkili kurtarma yardımcı programlarının kullanılmasını gerektirir.
Bootlin, bu sorunu çözmek için bugün Snagboot adlı yeni bir kurtarma ve güncelleme aracını piyasaya sürmekten memnuniyet duyar.
Snagboot Hakkında
Snagboot, özel yardımcı programların bir analoğu olarak işlev görür, çoğunlukla sahipler, cihazları geri yüklemek ve güncellemek içinSTM32CubeProgrammer, SAM-BA ISP, UUU ve sunxi-fel gibi.
budala çok çeşitli panolar ve gömülü aygıtlarla çalışacak şekilde tasarlanmıştır, gömülü sistem geliştiricilerinin farklı yardımcı programları kullanmanın ayrıntılarını öğrenme ihtiyacını ortadan kaldırır.
Örneğin, snagboot'un ilk sürümü ST STM32MP1, Microchip SAMA5, NXP i.MX6/7/8, Texas Instruments AM335x, Allwinner SUNXI ve Texas Instruments AM62x SoC tabanlı cihazları kurtarmak için kullanılabilir.
STM32CubeProgrammer , SAM-BA veya UUU gibi USB üzerinden hızlı kurtarma ve güncelleme sunmak için bu işlevsellikten yararlanan bazı araçlar vardır. Bununla birlikte, bu araçların tümü satıcıya özeldir; bu, birden fazla platform türü üzerinde çalışan geliştiricilerin farklı araçlar arasında geçiş yapması ve her birini nasıl kullanacağını öğrenmesi gerektiği anlamına gelir.
Snagboot'un indirmek ve güncellemek için iki yardımcı program içerdiğinden bahsediliyor:
- budak örtüsü- Kalıcı belleğin içeriğini değiştirmeden harici RAM'i başlatmak ve U-Boot önyükleyicisini çalıştırmak için satıcıya özgü ROM kodu mekanizmalarını kullanır.
- takılma- DFU (Cihaz Üretici Yazılımı Güncellemesi), UMS (USB Yığın Depolama) veya Fastboot kullanarak bir sistem görüntüsünü geçici olmayan belleğe flaşlamak için çalışan bir U-Boot ile etkileşime girer.
ilgilenenler için onun hakkında daha fazla bilgi edinmek içinLütfen Snagboot'un kodunun Python'da yazıldığını ve GPLv2 lisansı altında açık kaynaklı olduğunu bilin.
Snagboot Linux'a nasıl kurulur?
Snagboot'u sistemlerine kurabilmekle ilgilenenler şunu bilmeliler: Bunu oldukça kolay bir şekilde yapabilirsiniz. Daha sonra sorun yaşamamak için sadece gerekli bağımlılıkları kurmaları gerekir.
İlki, aşağıdaki gibi kurulabilen libhidapi'dir (dağıtımınıza bağlı olarak). Sadece bir terminal açmaları gerekiyor ve içine şunu yazacaklar:
Debian / Ubuntu
sudo apt install libhidapi-hidraw0
Veya şunları da yükleyebilirsiniz:
sudo apt install libhidapi-libusb0
Arch Linux (AUR'dan da kurulabilmesine rağmen, aşağıdaki kurulum komutuna bakın)
sudo pacman -S hidapi
RHEL/Fedora
sudo dnf -y install hidapi
Bu yapıldıktan sonra tek yapmanız gereken Snagboot'u pip ile kurmak ve bunu yapmak için aşağıdaki komutu yazmanız yeterli:
python3 -m pip install --user snagboot
Son olarak, snagrecover'ın hedef SoC'lerin USB aygıtlarına okuma ve yazma erişimine sahip olması için yalnızca udev kurallarını eklememiz gerekecek:
snagrecover --udev > 80-snagboot.rules
sudo cp 80-snagboot.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules
sudo udevadm trigger
Ve bununla hazır, bu araçla çalışmaya başlayabilirsiniz. Arch Linux kullanıcıları söz konusu olduğunda, daha önce de belirtildiği gibi, araç doğrudan AUR'den kurulabilir ve bunun için yalnızca deponun etkinleştirilmesi ve bir AUR sihirbazının kurulu olması gerekir.
Aracı yüklemek için komut şudur:
yay -S snagboot
Son olarak, kendi başlarına derlemeyi tercih edenler için aşağıdakileri çalıştırın:
git klonu https://github.com/bootlin/snagboot.git
cd snagboot
./install.sh
Kılavuzlar ve kullanım talimatları ile ilgili olarak, tüm bu bilgilere şu adresten bakabilirsiniz: sonraki bağlantı.