ブートリン (組み込みシステム向けLinux専門会社)、 それを知らせた 数日前 スナッグブーツの起動、ファームウェアの破損などにより起動が停止した組み込みデバイスを復元およびフラッシュするように設計されています。
スナッグブーツ これは、ほとんどの組み込みプラットフォームが USB または UART インターフェイスを提供しているために生まれました。 ファームウェアが破損した場合のブート イメージの回復と転送のために使用されますが、これらのインターフェイスは 各プラットフォームに固有の また、個々のメーカーの製品に関連する回復ユーティリティを使用する必要があります。
この問題に対処するために、Bootlin は本日、Snagboot と呼ばれる新しい回復および更新ツールをリリースすることを嬉しく思います。これは、上記のベンダー固有ツールの汎用のオープンソース代替品となることを目的としています。
スナッグブーツについて
Snagboot は特殊なユーティリティの類似物として機能します、主に所有者、 デバイスを復元および更新するには、STM32CubeProgrammer、SAM-BA ISP、UUU、sunxi-fel など。
スナッグブーツ 幅広いボードや組み込みデバイスで動作するように設計されていますこれにより、組み込みシステム開発者は、さまざまなユーティリティの使用方法を詳しく学ぶ必要がなくなります。
たとえば、snagboot の最初のバージョンは、ST STM32MP1、Microchip SAMA5、NXP i.MX6/7/8、Texas Instruments AM335x、Allwinner SUNXI、および Texas Instruments AM62x SoC に基づくデバイスのリカバリに使用できます。
STM32CubeProgrammer 、 SAM-BA 、 UUU など、この機能を利用して USB 経由での高速リカバリとアップデートを提供するツールがいくつかあります。 ただし、これらのツールはすべてベンダー固有であるため、複数の種類のプラットフォームで作業する開発者は、異なるツールを切り替えて、それぞれの使用方法を学習する必要があります。
Snagboot には、ダウンロードして更新するための XNUMX つのユーティリティが含まれていることが記載されています。
- スナグレカバー- ベンダー固有の ROM コード メカニズムを使用して、外部 RAM を初期化し、永続メモリの内容を変更せずに U-Boot ブートローダーを実行します。
- スナッグフラッシュ- 実行中の U-Boot と対話し、DFU (デバイス ファームウェア アップデート)、UMS (USB 大容量ストレージ)、または Fastboot を使用してシステム イメージを不揮発性メモリにフラッシュします。
興味のある方へ それについてもっと知るためにSnagboot のコードは Python で書かれており、GPLv2 ライセンスの下でオープンソース化されていることに注意してください。
Linux に Snagboot をインストールするにはどうすればよいですか?
自分のシステムに Snagboot をインストールできるようにすることに興味がある人は、次のことを知っておく必要があります。 とても簡単にできます。 後で問題が発生しないように、必要な依存関係のみをインストールする必要があります。
XNUMX つ目は libhidapi で、次のようにインストールできます (ディストリビューションによって異なります)。 ターミナルを開いて次のように入力するだけです。
Debian / Ubuntu
sudo apt install libhidapi-hidraw0
または、以下をインストールすることもできます。
sudo apt install libhidapi-libusb0
Arch Linux (AUR からインストールすることもできますが、以下のインストール コマンドを参照してください)
sudo pacman -S hidapi
RHEL/Fedora
sudo dnf -y install hidapi
これが完了したら、pip を使用して Snagboot をインストールするだけです。これを行うには、次のコマンドを入力するだけです。
python3 -m pip install --user snagboot
最後に、snagrecover がターゲット SoC の USB デバイスに読み取りおよび書き込みアクセスできるように、udev ルールを追加するだけです。
snagrecover --udev > 80-snagboot.rules
sudo cp 80-snagboot.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules
sudo udevadm trigger
これで準備が整ったら、このツールの使用を開始できます。 Arch Linux ユーザーの場合、前述のように、このツールは AUR から直接インストールできます。そのために必要なのは、リポジトリを有効にし、AUR ウィザードをインストールすることだけです。
ツールをインストールするコマンドは次のとおりです。
yay -S snagboot
最後になりましたが、自分でコンパイルしたい人は、次のコマンドを実行してください。
git クローン https://github.com/bootlin/snagboot.git
cd snagboot
./install.sh
マニュアルと使用説明書については、すべての情報を参照してください。 次のリンク.