جدول المحتويات:

بناء توزيع جنو / لينكس لـ Raspberry Pi باستخدام مشروع Yocto: 6 خطوات
بناء توزيع جنو / لينكس لـ Raspberry Pi باستخدام مشروع Yocto: 6 خطوات

فيديو: بناء توزيع جنو / لينكس لـ Raspberry Pi باستخدام مشروع Yocto: 6 خطوات

فيديو: بناء توزيع جنو / لينكس لـ Raspberry Pi باستخدام مشروع Yocto: 6 خطوات
فيديو: Building Yocto Project at scale with TuxSuite, Vishal Bhoj 2024, شهر نوفمبر
Anonim
Image
Image

من المحتمل أن يكون Raspberry Pi أكثر أجهزة الكمبيوتر ذات اللوحة الواحدة منخفضة التكلفة في السوق. يتم استخدامه غالبًا لإنترنت الأشياء والمشاريع المضمنة الأخرى. تتمتع العديد من توزيعات GNU / Linux بدعم ممتاز لـ Raspberry Pi وهناك أيضًا Microsoft Windows لـ Raspberry Pi 2.

إذا كنت ترغب في إنشاء إنترنت الأشياء (IoT) استنادًا إلى Raspberry Pi وإذا كنت تريد القيام بذلك بشكل احترافي ، فمن المستحسن إنشاء توزيع Linux مضمن يناسب الاحتياجات الدقيقة لجهازك. لتشغيل توزيعة Linux على Raspberry Pi ، فأنت بحاجة إلى أداة تحميل التشغيل و Linux kernel والعديد من التطبيقات في مساحة المستخدم.

أحد أكثر الطرق شيوعًا لإنشاء توزيع Linux مضمن مخصص هو استخدام Yocto Project. Yocto هو مشروع تعاوني لمؤسسة Linux يستخدم إطار عمل Openembedded ومحرك بناء bitbake. Poky هو النظام المرجعي لمشروع Yocto مع دورة إصدار مدتها ستة أشهر. يوفر بيانات وصفية مقسمة إلى طبقات ووصفات لبناء حزم وصور مختلفة.

يقدم هذا البرنامج التعليمي الخطوات الدقيقة لبناء صورة بأدنى حد من توزيع GNU / Linux لـ Raspberry Pi ، بما في ذلك systemd و connman.

الخطوة الأولى: الاستعداد

احصل على شفرة المصدر
احصل على شفرة المصدر

ستحتاج في هذا البرنامج التعليمي إلى:

  • كمبيوتر شخصي مع توزيعة جنو / لينكس ، على سبيل المثال أوبونتو ، والتي ستبني عليها توزيعة جنو / لينكس لـ Raspberry Pi.
  • فطيرة التوت
  • بطاقة microSD أو SD اعتمادًا على إصدار Raspberry Pi الخاص بك
  • كابل HDMI وشاشة
  • لوحة مفاتيح USB
  • مزود الطاقة

قم بتثبيت الحزم المطلوبة على حاسوبك الشخصي اعتمادًا على توزيعة جنو / لينكس لديك:

  • لا يمكنك خبز صورة إذا كان دليلك الرئيسي مشفرًا لأنه لن يسمح بأسماء الملفات الطويلة
  • يستغرق البناء الأولي وقتًا طويلاً إذا كان الاتصال بطيئًا
  • أثناء وميض الصورة على بطاقة SD ، تأكد من تحديد main / dev / sdX ، وليس / dev / sdXp1 أو أي شكل آخر للجزء الداخلي

الخطوة 2: احصل على شفرة المصدر

قم بتنفيذ الإجراءات أدناه على جهاز الكمبيوتر الشخصي الخاص بك:

  • استنساخ Poky باستخدام Git (في هذه الحالة أقوم بتنزيل الإصدار Jethro (2.0) من Yocto Project):

    git clone -b jethro git: //git.yoctoproject.org/poky

  • انتقل إلى دليل بوكي:

    قرص مضغوط

  • استنساخ meta-raspberrypi:

    git clone -b jethro git: //git.yoctoproject.org/meta-raspberrypi

الخطوة 3: التهيئة

تهيئة
تهيئة
  • تهيئة بيئة البناء

    مصدر oe-init-build-env

  • أضف meta-raspberrypi إلى BBLAYERS في conf / bblayers.conf ، بعد ذلك يجب أن يكون مشابهًا (ولكن في حالتك بمسارات مختلفة) إلى:

    BBLAYERS؟ =

    / home / leon / poky / meta / / home / leon / poky / meta-yocto / / home / leon / poky / meta-yocto-bsp / / home / leon / poky / meta-raspberrypi \"

  • افتح conf / local.conf وقم بتغيير الجهاز إلى raspberrypi أو raspberrypi0 أو raspberrypi2 أو raspberrypi3 اعتمادًا على طراز Raspberry Pi الخاص بك ، على سبيل المثال:

    MACHINE ؟؟ = "raspberrypi2"

  • قم بإلحاق السطر التالي بـ conf / local.conf لتعيين ذاكرة وحدة معالجة الرسومات بالميغابايت:

    GPU_MEM = "16"

  • اختياريًا ، قم بإلحاق السطر التالي بـ conf / local.conf لاستبدال System V بـ systemd:

    DISTRO_FEATURES_append = "systemd"

    VIRTUAL-RUNTIME_init_manager = "systemd" DISTRO_FEATURES_BACKFILL_CONSIDERED = "sysvinit" VIRTUAL-RUNTIME_initscripts = ""

  • اختياريًا ، قم بإلحاق السطر التالي بـ conf / local.conf لتضمين مدير شبكة سطر الأوامر connman في الصورة:

    IMAGE_INSTALL_append = "connman-client"

الخطوة 4: بناء صورة

بناء صورة
بناء صورة
  • نفِّذ الأمر التالي لإنشاء صورة مصغرة لتوزيع جنو / لينكس لـ Raspberry Pi الخاص بك:

    bitbake rpi-basic-image

يرجى ملاحظة أن الإنشاء قد يستغرق عدة ساعات اعتمادًا على أجهزة الكمبيوتر الشخصي وسرعة اتصال الإنترنت.

الخطوة 5: بطاقة فلاش SD

عند اكتمال البناء ، سيتم وضع الصورة في المسار التالي في دليل الإنشاء: tmp / publish / images / raspberrypi2 / rpi-basic-image-raspberrypi2.rpi-sdimg.

قم بتوصيل بطاقة microSD بجهاز الكمبيوتر الخاص بك ، واستبدل X بالمعرف المقابل لها (والذي يمكن العثور عليه من خلال أوامر مثل lsblk أو fdisk -l) وقم بتنفيذ الأوامر التالية لإيضاح الصورة الموجودة عليها:

sudo umount / dev / sdX

sudo dd if = tmp / نشر / صور / raspberrypi2 / core-image-weston-raspberrypi2.rpi-sdimg of = / dev / sdX sync sudo umount / dev / sdX

بدلاً من ذلك ، إذا كنت تفضل يمكنك استخدام bmaptool بدلاً من dd.

كن حذرًا جدًا أثناء وميض بطاقة SD وتأكد من أنك تستخدم الحرف الصحيح للمسار إلى الجهاز. افعل ذلك على مسؤوليتك الخاصة وتذكر أن الخطأ قد يؤدي إلى إتلاف محرك الأقراص على جهاز الكمبيوتر الشخصي الخاص بك!

الخطوة 6: التمهيد والاختبار

قم بتشغيل Raspberry Pi ونفذ الخطوات التالية للتحقق من أن الصورة تعمل بنجاح:

  • تسجيل الدخول كجذر دون أي كلمة مرور
  • إذا تم تثبيت connman ، فتحقق من تحميل خدمات systemd الخاصة به:

    systemctl status -l connman

موصى به: