Snagboot ، أداة مساعدة ممتازة لاستعادة وفلاش الأجهزة المدمجة

snapboot

Snagboot هي أداة استرداد مفتوحة المصدر.

بوتلين (شركة متخصصة في لينكس للأنظمة المدمجة) ، كشف النقاب قبل عدة أيام إطلاق snagboot، مصمم لاستعادة وفلاش الأجهزة المضمنة التي توقفت عن التشغيل ، على سبيل المثال ، بسبب تلف البرامج الثابتة.

snagboot ولدت لأن معظم الأنظمة الأساسية المضمنة توفر واجهات USB أو UART لاستعادة ونقل صور التمهيد في حالة تلف البرامج الثابتة ، ولكن هذه الواجهات خاصة بكل منصة وتتطلب استخدام أدوات الاسترداد المرتبطة بمنتجات الشركة المصنعة الفردية.

لمعالجة هذه المشكلة ، يسر Bootlin إصدار أداة استرداد وتحديث جديدة اليوم ، تسمى Snagboot ، والتي تهدف إلى أن تكون بديلاً عامًا ومفتوح المصدر للأدوات الخاصة بالبائع المذكورة أعلاه.

حول Snagboot

يعمل Snagboot كنظير للمرافق المتخصصة، ومعظمهم من الملاك ، لاستعادة وتحديث الأجهزة، مثل STM32CubeProgrammer و SAM-BA ISP و UUU و sunxi-fel.

snagboot تم تصميمه للعمل مع مجموعة كبيرة من اللوحات والأجهزة المدمجة، مما يلغي الحاجة إلى مطوري الأنظمة المضمنة لتعلم مداخل وعموم استخدام الأدوات المساعدة المختلفة.

على سبيل المثال ، يمكن استخدام الإصدار الأول من snagboot لاستعادة الأجهزة على أساس ST STM32MP1 و Microchip SAMA5 و NXP i.MX6 / 7/8 و Texas Instruments AM335x و Allwinner SUNXI و Texas Instruments AM62x SoC.

هناك بعض الأدوات التي تستفيد من هذه الوظيفة لتقديم استرداد سريع وتحديث عبر USB ، مثل STM32CubeProgrammer أو SAM-BA أو UUU. ومع ذلك ، فإن هذه الأدوات كلها خاصة بالمورد ، مما يعني أن المطورين الذين يعملون على أنواع متعددة من الأنظمة الأساسية يجب عليهم التبديل بين الأدوات المختلفة ومعرفة كيفية استخدام كل منها.

يذكر أن Snagboot يشتمل على أداتين مساعدتين للتنزيل والتحديث:

  1. انتعاش- يستخدم آليات كود ROM الخاصة بالمورد لتهيئة ذاكرة الوصول العشوائي الخارجية وتشغيل محمل الإقلاع U-Boot دون تغيير محتويات الذاكرة الدائمة.
  2. سناج فلاش- يتفاعل مع U-Boot قيد التشغيل ليومض صورة النظام إلى ذاكرة غير متطايرة باستخدام DFU (تحديث البرنامج الثابت للجهاز) أو UMS (تخزين USB كبير السعة) أو Fastboot.

للراغبين في لمعرفة المزيد عنهايرجى العلم أن رمز Snagboot مكتوب بلغة Python ومفتوح المصدر بموجب ترخيص GPLv2.

كيفية تثبيت Snagboot على Linux؟

للراغبين في تثبيت Snagboot على نظامهم ، يجب أن يعرفوا ذلك يمكنك القيام بذلك بسهولة تامة. يجب عليهم فقط تثبيت التبعيات الضرورية حتى لا تحدث مشاكل لاحقًا.

الأول هو libhidapi والذي يمكن تثبيته على النحو التالي (حسب التوزيع الخاص بك). عليهم فقط فتح محطة وسيكتبون فيها:

ديبيان / أوبونتو

sudo apt install libhidapi-hidraw0

أو يمكنك أيضًا تثبيت:

sudo apt install libhidapi-libusb0

Arch Linux (على الرغم من أنه يمكن تثبيته أيضًا من AUR ، راجع أمر التثبيت أدناه)

sudo pacman -S hidapi

RHEL / فيدورا

sudo dnf -y install hidapi

بمجرد الانتهاء من ذلك ، كل ما عليك فعله هو تثبيت Snagboot مع النقطة وللقيام بذلك ، ما عليك سوى كتابة الأمر التالي:

python3 -m pip install --user snagboot

أخيرًا ، سيتعين علينا فقط إضافة قواعد udev حتى يتمكن برنامج snagrecover من قراءة وكتابة الوصول إلى أجهزة USB الخاصة بشركة SoCs المستهدفة:

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

أخيرًا وليس آخرًا ، بالنسبة لأولئك الذين يفضلون الترجمة بمفردهم ، ما عليك سوى تشغيل ما يلي:

استنساخ بوابة https://github.com/bootlin/snagboot.git

cd snagboot
./install.sh

فيما يتعلق بأدلة وتعليمات الاستخدام ، يمكنك الرجوع إلى كل هذه المعلومات في الرابط التالي.


اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.