Cuprins:

Construirea distribuției GNU / Linux pentru Raspberry Pi folosind proiectul Yocto: 6 pași
Construirea distribuției GNU / Linux pentru Raspberry Pi folosind proiectul Yocto: 6 pași

Video: Construirea distribuției GNU / Linux pentru Raspberry Pi folosind proiectul Yocto: 6 pași

Video: Construirea distribuției GNU / Linux pentru Raspberry Pi folosind proiectul Yocto: 6 pași
Video: I turned my '80s typewriter into a Linux terminal 2024, Noiembrie
Anonim
Image
Image

Raspberry Pi este probabil cel mai popular computer cu o singură placă low cost de pe piață. Este folosit pentru Internetul obiectelor și alte proiecte încorporate. Mai multe distribuții GNU / Linux au suport excelent pentru Raspberry Pi și există chiar și Microsoft Windows pentru Raspberry Pi 2.

Dacă doriți să creați Internetul obiectelor (IoT) bazat pe Raspberry Pi și dacă doriți să faceți acest lucru profesional, este recomandat să creați o distribuție Linux încorporată care să se potrivească exact nevoilor dispozitivului dvs. Pentru a porni o distribuție Linux pe Raspberry Pi aveți nevoie de un bootloader, kernel Linux și diverse aplicații în spațiul utilizatorului.

Una dintre cele mai populare modalități de construire a unei distribuții Linux încorporate personalizate este utilizarea proiectului Yocto. Yocto este un proiect de colaborare al fundației Linux care folosește cadrul Openembedded și motorul de construire a bitbake-ului. Poky este sistemul de referință al proiectului Yocto cu un ciclu de lansare de șase luni. Oferă meta date împărțite în straturi și rețete pentru construirea diverselor pachete și imagini.

Acest tutorial oferă pașii exacți pentru construirea unei imagini cu distribuție minimă GNU / Linux pentru Raspberry Pi, care include systemd și connman.

Pasul 1: Pregătirea

Obțineți codul sursă
Obțineți codul sursă

Pentru acest tutorial veți avea nevoie de:

  • Computer personal cu distribuție GNU / Linux, de exemplu Ubuntu, pe care veți construi distribuția GNU / Linux pentru Raspberry Pi.
  • Raspberry Pi
  • card microSD sau SD în funcție de versiunea Raspberry Pi
  • Cablu HDMI și monitor
  • Tastatură USB
  • Alimentare electrică

Instalați pachetele necesare pe computerul dvs. personal, în funcție de distribuția GNU / Linux: https://www.yoctoproject.org/docs/2.0/yocto-projec… Note (de Yunus EmreI):

  • Nu puteți coace o imagine dacă directorul dvs. de acasă este criptat, deoarece nu va permite nume de fișiere lungi
  • Construcția inițială durează foarte mult dacă aveți o conexiune lentă
  • În timp ce clipiți imaginea pe cardul SD, asigurați-vă că selectați principalul / dev / sdX, nu / dev / sdXp1 sau altă variantă a părții interne

Pasul 2: obțineți codul sursă

Efectuați acțiunile de mai jos pe computerul dvs. personal:

  • Clonează Poky folosind Git (în acest caz descarc versiunea Jethro (2.0) a Proiectului Yocto):

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

  • Accesați directorul poky:

    cd poky

  • Clonează meta-raspberrypi:

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

Pasul 3: Configurați

Configurați
Configurați
  • Inițializați mediul de construire

    sursa oe-init-build-env

  • Adăugați meta-raspberrypi la BBLAYERS în conf / bblayers.conf, după care ar trebui să fie similar (dar în cazul dvs. cu căi diferite) cu:

    BBLAYERS? =

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

  • Deschideți conf / local.conf și schimbați MACHINE în raspberrypi, raspberrypi0, raspberrypi2 sau raspberrypi3 în funcție de modelul dvs. Raspberry Pi, de exemplu:

    MACHINE ?? = "raspberrypi2"

  • Adăugați următoarea linie la conf / local.conf pentru a seta memoria GPU în megaocteți:

    GPU_MEM = "16"

  • Opțional, adăugați următoarea linie la conf / local.conf pentru a înlocui System V cu systemd:

    DISTRO_FEATURES_append = "systemd"

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

  • Opțional, adăugați următoarea linie la conf / local.conf pentru a include managerul de rețea linie de comandă connman în imagine:

    IMAGE_INSTALL_append = "connman connman-client"

Pasul 4: Construiți o imagine

Construiește o imagine
Construiește o imagine
  • Executați următoarea comandă pentru a crea o imagine minimă a unei distribuții GNU / Linux pentru Raspberry Pi:

    bitbake rpi-basic-image

Rețineți că versiunea poate dura până la câteva ore, în funcție de hardware-ul computerului dvs. personal și de viteza conexiunii la Internet.

Pasul 5: Card SD Flash

La finalizarea construcției, imaginea va fi localizată la următoarea cale din directorul de construire: tmp / deploy / images / raspberrypi2 / rpi-basic-image-raspberrypi2.rpi-sdimg.

Conectați un card microSD la computer, înlocuiți X cu ID-ul său corespunzător (care poate fi găsit prin comenzi precum lsblk sau fdisk -l) și executați următoarele comenzi pentru a clipi imaginea de pe acesta:

sudo umount / dev / sdX

sudo dd if = tmp / deploy / images / raspberrypi2 / core-image-weston-raspberrypi2.rpi-sdimg of = / dev / sdX sync sudo umount / dev / sdX

Alternativ, dacă preferați, puteți utiliza bmaptool în loc de dd.

Fiți foarte atenți în timp ce clipiți cardul SD și asigurați-vă că utilizați litera potrivită pentru calea către dispozitiv. Faceți-o pe propriul risc și rețineți că o greșeală ar putea deteriora unitatea de pe computerul dvs. personal!

Pasul 6: Pornire și testare

Porniți Raspberry Pi și executați pașii următori pentru a verifica dacă imaginea funcționează cu succes:

  • Conectați-vă ca root fără nicio parolă
  • Dacă este instalat Connman, verificați dacă serviciile sale systemd au fost încărcate:

    systemctl status -l connman

Recomandat: