Talaan ng mga Nilalaman:

Pagbuo ng Pamamahagi ng GNU / Linux para sa Raspberry Pi Gamit ang Yocto Project: 6 na Hakbang
Pagbuo ng Pamamahagi ng GNU / Linux para sa Raspberry Pi Gamit ang Yocto Project: 6 na Hakbang

Video: Pagbuo ng Pamamahagi ng GNU / Linux para sa Raspberry Pi Gamit ang Yocto Project: 6 na Hakbang

Video: Pagbuo ng Pamamahagi ng GNU / Linux para sa Raspberry Pi Gamit ang Yocto Project: 6 na Hakbang
Video: «Развлечение с музыкой и программированием», Коннор Харрис и Стивен Крюсон 2024, Nobyembre
Anonim
Image
Image

Ang Raspberry Pi ay marahil ang pinakatanyag na low cost solong board computer sa merkado. Mas madalas itong ginagamit para sa Internet of Things at iba pang naka-embed na mga proyekto. Maraming pamamahagi ng GNU / Linux ang may mahusay na suporta para sa Raspberry Pi at mayroon pang Microsoft Windows para sa Raspberry Pi 2.

Kung nais mong lumikha ng Internet of Things (IoT) batay sa Raspberry Pi at kung nais mong gawin ito ng propesyonal inirerekumenda na bumuo ng isang naka-embed na pamamahagi ng Linux na umaangkop sa eksaktong mga pangangailangan ng iyong aparato. Upang mag-boot ng isang pamamahagi ng Linux sa Raspberry Pi kailangan mo ng isang bootloader, Linux kernel at iba't ibang mga application sa puwang ng gumagamit.

Ang isa sa mga pinakatanyag na paraan para sa pagbuo ng pasadyang naka-embed na pamamahagi ng Linux ay ang paggamit ng Yocto Project. Ang Yocto ay isang nakikipagtulungan na proyekto ng Linux foundation na gumagamit ng Openembedded framework at bitbake build engine. Ang Poky ay ang sangguniang sistema ng Yocto Project na may anim na buwan na siklo ng paglabas. Nagbibigay ito ng data ng meta na nahahati sa mga layer at resipe para sa pagbuo ng iba't ibang mga package at imahe.

Nagbibigay ang tutorial na ito ng eksaktong mga hakbang para sa pagbuo ng isang imahe na may kaunting pamamahagi ng GNU / Linux para sa Raspberry Pi, na kasama ang systemd at connman.

Hakbang 1: Paghahanda

Kunin ang Source Code
Kunin ang Source Code

Para sa tutorial na ito kakailanganin mo:

  • Personal na computer na may pamamahagi ng GNU / Linux, halimbawa ng Ubuntu, kung saan bubuo ka ng pamamahagi ng GNU / Linux para sa Raspberry Pi.
  • Raspberry Pi
  • microSD o SD card depende sa bersyon ng iyong Raspberry Pi
  • HDMI cable at isang monitor
  • USB keyboard
  • Supply ng kuryente

I-install ang kinakailangang mga pakete sa iyong personal na computer depende sa iyong pamamahagi ng GNU / Linux: https://www.yoctoproject.org/docs/2.0/yocto-projec…Notes (ni Yunus EmreI):

  • Hindi ka maaaring maghurno ng isang imahe kung naka-encrypt ang iyong direktoryo sa bahay dahil hindi pinapayagan nito ang mahabang pangalan ng file
  • Ang paunang pagbuo ay tumatagal ng masyadong mahaba kung mayroon kang isang mabagal na koneksyon
  • Habang ipinapakita ang imahe sa SD card siguraduhin na pinili mo ang pangunahing / dev / sdX, hindi ang / dev / sdXp1 o iba pang pagkakaiba-iba ng panloob na bahagi

Hakbang 2: Kunin ang Source Code

Gawin ang mga pagkilos sa ibaba sa iyong personal na computer:

  • I-clone Poky ang paggamit ng Git (sa kasong ito ay ina-download ko ang paglabas ng Jethro (2.0) ng Yocto Project):

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

  • Pumunta sa direktoryo ng poky:

    cd poky

  • I-clone ang meta-raspberrypi:

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

Hakbang 3: I-configure

I-configure
I-configure
  • Pasimulan ang kapaligiran sa pagbuo

    pinagmulan oe-init-build-env

  • Magdagdag ng meta-raspberrypi sa BBLAYERS sa conf / bblayers.conf, pagkatapos nito dapat itong maging katulad (ngunit sa iyong kaso na may iba't ibang mga landas) sa:

    BBLAYERS? =

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

  • Buksan ang conf / local.conf at baguhin ang MACHINE sa raspberrypi, raspberrypi0, raspberrypi2 o raspberrypi3 depende sa iyong modelo ng Raspberry Pi, halimbawa:

    MESIN ?? = "raspberrypi2"

  • Idagdag ang sumusunod na linya sa conf / local.conf upang maitakda ang memorya ng GPU sa megabytes:

    GPU_MEM = "16"

  • Bilang pagpipilian, idagdag ang sumusunod na linya sa conf / local.conf upang mapalitan ang System V ng systemd:

    DISTRO_FEATURES_append = "systemd"

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

  • Bilang pagpipilian, idagdag ang sumusunod na linya sa conf / local.conf upang isama ang command line network manager connman sa imahe:

    IMAGE_INSTALL_append = "Connman Connman-client"

Hakbang 4: Bumuo ng isang Imahe

Bumuo ng isang Imahe
Bumuo ng isang Imahe
  • Isagawa ang sumusunod na utos upang bumuo ng isang minimal na imahe ng isang pamamahagi ng GNU / Linux para sa iyong Raspberry Pi:

    bitbake rpi-basic-image

Mangyaring tandaan na ang build ay maaaring tumagal ng hanggang sa maraming oras depende sa hardware ng iyong personal na computer at ang bilis ng koneksyon sa Internet.

Hakbang 5: Flash SD Card

Kapag nakumpleto ng build ang imahe ay matatagpuan sa sumusunod na landas sa iyong direktoryo ng build: tmp / deploy / mga imahe / raspberrypi2 / rpi-basic-image-raspberrypi2.rpi-sdimg.

I-plug ang isang microSD card sa iyong computer, palitan ang X ng kaukulang ID nito (na maaaring matagpuan sa pamamagitan ng mga utos tulad ng lsblk o fdisk -l) at ipatupad ang mga sumusunod na utos upang mai-flash ang imahe dito:

sudo umount / dev / sdX

sudo dd if = tmp / deploy / mga imahe / raspberrypi2 / core-image-weston-raspberrypi2.rpi-sdimg ng = / dev / sdX sync sudo umount / dev / sdX

Bilang kahalili, kung gusto mo maaari mong gamitin ang bmaptool sa halip na dd.

Maging maingat habang nag-flash ng SD card at tiyaking gumagamit ka ng tamang titik para sa daanan sa aparato. Gawin ito sa sarili mong peligro at tandaan na ang isang pagkakamali ay maaaring makapinsala sa isang drive sa iyong personal na computer!

Hakbang 6: Boot at Pagsubok

Boot Raspberry Pi at isagawa ang mga sumusunod na hakbang upang ma-verify na ang imahe ay matagumpay na gumagana:

  • Pag-login bilang root nang walang anumang password
  • Kung naka-install ang connman, i-verify na na-load ang mga serbisyo ng systemd nito:

    katayuan ng systemctl -l connman

Inirerekumendang: