สารบัญ:
- ขั้นตอนที่ 1: เตรียมพร้อม
- ขั้นตอนที่ 2: รับซอร์สโค้ด
- ขั้นตอนที่ 3: กำหนดค่า
- ขั้นตอนที่ 4: สร้างภาพ
- ขั้นตอนที่ 5: แฟลชการ์ด SD
- ขั้นตอนที่ 6: บูตและทดสอบ
วีดีโอ: การสร้าง GNU/Linux Distribution สำหรับ Raspberry Pi โดยใช้ Yocto Project: 6 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:05
Raspberry Pi น่าจะเป็นคอมพิวเตอร์บอร์ดเดี่ยวราคาประหยัดที่ได้รับความนิยมมากที่สุดในตลาด มักใช้สำหรับ Internet of Things และโครงการฝังตัวอื่นๆ GNU/Linux หลายรุ่นรองรับ Raspberry Pi ได้ดีเยี่ยม และยังมี Microsoft Windows สำหรับ Raspberry Pi 2 อีกด้วย
หากคุณต้องการสร้าง Internet of Things (IoT) โดยใช้ Raspberry Pi และหากคุณต้องการทำอย่างมืออาชีพ ขอแนะนำให้สร้างการแจกจ่าย Linux แบบฝังตัวที่เหมาะกับความต้องการที่แท้จริงของอุปกรณ์ของคุณ ในการบู๊ต Linux บน Raspberry Pi คุณต้องมี bootloader, เคอร์เนล Linux และแอพพลิเคชั่นต่างๆ ในพื้นที่ผู้ใช้
วิธีหนึ่งที่ได้รับความนิยมมากที่สุดในการสร้างการกระจาย Linux แบบฝังตัวแบบกำหนดเองคือการใช้โครงการ Yocto Yocto เป็นโครงการความร่วมมือของมูลนิธิลินุกซ์ที่ใช้เฟรมเวิร์ก Openembedded และเอ็นจิ้นการสร้างบิตเบค Poky เป็นระบบอ้างอิงของโครงการ Yocto ที่มีรอบการเผยแพร่หกเดือน ให้ข้อมูลเมตาที่แบ่งออกเป็นเลเยอร์และสูตรสำหรับการสร้างแพ็คเกจและรูปภาพต่างๆ
บทช่วยสอนนี้มีขั้นตอนที่แน่นอนสำหรับการสร้างอิมเมจที่มีการกระจาย GNU/Linux น้อยที่สุดสำหรับ Raspberry Pi ซึ่งรวมถึง systemd และ connman
ขั้นตอนที่ 1: เตรียมพร้อม
สำหรับบทช่วยสอนนี้ คุณจะต้อง:
- คอมพิวเตอร์ส่วนบุคคลที่มีการแจกจ่าย GNU/Linux เช่น Ubuntu ซึ่งคุณจะสร้าง GNU/Linux distribution สำหรับ Raspberry Pi
- ราสเบอร์รี่ปี่
- การ์ด microSD หรือ SD ขึ้นอยู่กับรุ่นของ Raspberry Pi
- สาย HDMI และจอภาพ
- แป้นพิมพ์ USB
- แหล่งจ่ายไฟ
ติดตั้งแพ็คเกจที่จำเป็นบนคอมพิวเตอร์ส่วนบุคคลของคุณโดยขึ้นอยู่กับการแจกจ่าย GNU/Linux ของคุณ: https://www.yoctoproject.org/docs/2.0/yocto-projec…Notes (โดย Yunus EmreI):
- คุณไม่สามารถอบรูปภาพได้หากไดเร็กทอรีโฮมของคุณถูกเข้ารหัสเพราะมันไม่ยอมให้ชื่อไฟล์ยาว
- บิลด์เริ่มต้นใช้เวลานานมากหากคุณมีการเชื่อมต่อที่ช้า
- ขณะแฟลชภาพไปยังการ์ด SD ตรวจสอบให้แน่ใจว่าคุณได้เลือกหลัก /dev/sdX ไม่ใช่ /dev/sdXp1 หรือรูปแบบอื่น ๆ ของชิ้นส่วนภายใน
ขั้นตอนที่ 2: รับซอร์สโค้ด
ดำเนินการด้านล่างบนคอมพิวเตอร์ส่วนบุคคลของคุณ:
-
โคลน Poky โดยใช้ Git (ในกรณีนี้ฉันกำลังดาวน์โหลดรุ่น Jethro (2.0) ของ Yocto Project):
git clone -b jethro git://git.yoctoproject.org/poky
-
ไปที่ไดเร็กทอรี poky:
cd poky
-
โคลน meta-raspberrypi:
โคลน git -b jethro git://git.yoctoproject.org/meta-raspberrypi
ขั้นตอนที่ 3: กำหนดค่า
-
เริ่มต้นสภาพแวดล้อมการสร้าง
แหล่งที่มา oe-init-build-env
-
เพิ่ม meta-raspberrypi ให้กับ BBLAYERS ใน conf/bblayers.conf หลังจากนั้นควรคล้ายกัน (แต่ในกรณีของคุณที่มีเส้นทางต่างกัน) ไปที่:
เบลเยอร์ ?=
/home/leon/poky/meta / /home/leon/poky/meta-yocto / /home/leon/poky/meta-yocto-bsp / /home/leon/poky/meta-raspberrypi \"
-
เปิด conf/local.conf และเปลี่ยน MACHINE เป็น raspberrypi, raspberrypi0, raspberrypi2 หรือ raspberrypi3 ขึ้นอยู่กับรุ่น Raspberry Pi ของคุณ ตัวอย่างเช่น
เครื่องจักร ??= "raspberrypi2"
-
ต่อท้ายบรรทัดต่อไปนี้เพื่อ conf/local.conf เพื่อตั้งค่าหน่วยความจำ GPU เป็นเมกะไบต์:
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 connman-client"
ขั้นตอนที่ 4: สร้างภาพ
-
ดำเนินการคำสั่งต่อไปนี้เพื่อสร้างอิมเมจขั้นต่ำของการแจกจ่าย GNU/Linux สำหรับ Raspberry Pi ของคุณ:
bitbake rpi-basic-image
โปรดทราบว่าการสร้างอาจใช้เวลาหลายชั่วโมงขึ้นอยู่กับฮาร์ดแวร์ของคอมพิวเตอร์ส่วนบุคคลของคุณและความเร็วของการเชื่อมต่ออินเทอร์เน็ต
ขั้นตอนที่ 5: แฟลชการ์ด SD
เมื่อบิลด์เสร็จสิ้น รูปภาพจะอยู่ที่พาธต่อไปนี้ในไดเร็กทอรีบิลด์ของคุณ: tmp/deploy/images/raspberrypi2/rpi-basic-image-raspberrypi2.rpi-sdimg
เสียบการ์ด microSD เข้ากับคอมพิวเตอร์ของคุณ แทนที่ X ด้วย ID ที่เกี่ยวข้อง (ซึ่งสามารถพบได้ผ่านคำสั่งเช่น lsblk หรือ fdisk -l) และดำเนินการคำสั่งต่อไปนี้เพื่อแฟลชรูปภาพบนการ์ด:
sudo umount /dev/sdX
sudo dd if=tmp/deploy/images/raspberrypi2/core-image-weston-raspberrypi2.rpi-sdimg of=/dev/sdX ซิงค์ sudo umount /dev/sdX
หรือหากต้องการ คุณสามารถใช้ bmaptool แทน dd
โปรดใช้ความระมัดระวังในขณะที่แฟลชการ์ด SD และตรวจสอบให้แน่ใจว่าคุณใช้ตัวอักษรที่ถูกต้องสำหรับพาธไปยังอุปกรณ์ ยอมรับความเสี่ยงเองและจำไว้ว่าความผิดพลาดอาจทำให้ไดรฟ์ในคอมพิวเตอร์ส่วนบุคคลของคุณเสียหายได้!
ขั้นตอนที่ 6: บูตและทดสอบ
บูต Raspberry Pi และทำตามขั้นตอนต่อไปนี้เพื่อตรวจสอบว่ารูปภาพทำงานสำเร็จหรือไม่:
- เข้าสู่ระบบในฐานะรูทโดยไม่ต้องใช้รหัสผ่าน
-
หากมีการติดตั้ง connman ให้ตรวจสอบว่าโหลดบริการ systemd แล้ว:
สถานะ systemctl -l connman
แนะนำ:
ติดตั้งง่าย IR Remote Control โดยใช้ LIRC สำหรับ Raspberry PI (RPi) - กรกฎาคม 2019 [ตอนที่ 1]: 7 ขั้นตอน
ติดตั้งง่าย IR Remote Control โดยใช้ LIRC สำหรับ Raspberry PI (RPi) - กรกฎาคม 2019 [ตอนที่ 1]: หลังจากค้นหามามาก ฉันรู้สึกประหลาดใจและผิดหวังกับข้อมูลที่ขัดแย้งกันเกี่ยวกับวิธีการตั้งค่ารีโมทคอนโทรล IR สำหรับโครงการ RPi ของฉัน ฉันคิดว่ามันน่าจะง่าย แต่การตั้งค่า Linux InfraRed Control (LIRC) นั้นมีปัญหามาเป็นเวลานาน bu
การสร้าง DashCam โดยใช้ Raspberry Pi Zero (pt.1): 3 ขั้นตอน
การสร้าง DashCam โดยใช้ Raspberry Pi Zero (pt.1): นี่คือจุดเริ่มต้นของซีรีส์ใหม่ที่เราได้เรียนรู้วิธีสร้าง dashcam โดยใช้ Raspberry Pi Zero โปรเจ็กต์นี้เป็นเครื่องบันทึกวิดีโอแบบต่อเนื่องจริง ๆ และสามารถใช้สำหรับการใช้งานอื่น ๆ รวมถึงการตรวจสอบสัตว์ป่า ในตอนที่ 1 เราจัดการกับ
การสร้าง Arduino Library สำหรับ YouTube Sight: 7 ขั้นตอน
การสร้างห้องสมุด Arduino สำหรับ YouTube Sight: สวัสดีทุกคน ฉันเพิ่งสร้างบริการที่เรียกว่า YouTube Sight ซึ่งสามารถดึงข้อมูลสมาชิกจาก YouTube Analytics API และให้จำนวนสมาชิกที่แม่นยำยิ่งขึ้นตั้งแต่ YouTube เริ่มรวบรวมผลลัพธ์ ด้วยสิ่งนี้ ฉันได้สร้างตัวอย่าง
การสร้าง Curved UI ใน Unity สำหรับ Virtual Reality: 4 ขั้นตอน
การสร้าง UI แบบโค้งใน Unity สำหรับ Virtual Reality: หากคุณกำลังมองหาโซลูชันที่ฟรีและง่ายดายในการสร้างอินเทอร์เฟซผู้ใช้แบบโค้งสำหรับแอปพลิเคชัน Virtual Reality หรือเกม VR ของคุณ มาถูกที่แล้ว ในบล็อกนี้ คุณจะได้เรียนรู้การสร้างองค์ประกอบ ui แบบโค้งในความสามัคคีโดยใช้ส่วนขยาย Unity UI
การออกแบบ PDB กำลังสูง (Power Distribution Board) สำหรับ Pixhawk: 5 ขั้นตอน
การออกแบบ High Power PDB (Power Distribution Board) สำหรับ Pixhawk: PCB เพื่อขับเคลื่อนพวกมันทั้งหมด!ปัจจุบันวัสดุส่วนใหญ่ที่คุณต้องใช้ในการสร้างโดรนนั้นมีราคาถูกบนอินเทอร์เน็ตดังนั้นแนวคิดในการสร้าง PCB ที่พัฒนาขึ้นเอง ไม่คุ้มเลย ยกเว้นบางกรณีที่คุณต้องการทำเรื่องแปลกและ