Az ellátási probléma
Az image felépítése után minden új táblát személyre kell szabni - olyan beállításokkal, mint a hostnév, az SSH-kulcsok, a konfiguráció vagy a backend regisztráció.
Ha ezt manuálisan kell elvégezni több tucat vagy akár több száz Raspberry Pi Compute Module 5 (CM5) egységeken keresztül egyszerűen nem praktikus.
Ez az a pont, ahol rpi-sb-provisioner jön a képbe - egy rugalmas first-boot automatizálási keretrendszer a Raspberry Pi eszközökhöz.
Hogyan rpi-sb-provisioner Működik
Az első rendszerindításkor a rendszer automatikusan elindítja a rpi-sb-provisioner, amely:
- beolvassa az üzembe helyezési konfigurációs fájlt
- szkripteket hajt végre a rendszerbeállítások alkalmazásához.
- kiírja az eszközazonosító adatokat (sorozatszámok, hitelesítő adatok, tanúsítványok stb.).
- a rendelkezésre bocsátási folyamatot befejezettnek jelzi
Ez biztosítja, hogy minden eszköz egyedileg konfigurált és telepítésre kész legyen - kézi beavatkozás nélkül.
Telepítés
Kövesse a hivatalos telepítési útmutatót a következő címen: https://github.com/raspberrypi/rpi-sb-provisioner
Konfiguráció
rpi-sb-provisioner tartalmaz egy egyszerű böngészőalapú konfigurációs felhasználói felületet.
Megnyitásához futtassa a következő parancsot egy terminálban:
xdg-open http://localhost:3142Innen:
- Nyissa meg a Képek menüt, és töltse fel az .img fájlt (amelyet a következővel készítettek rpi-image-gen).
- Nyissa meg a Beállítások menüt a rendelkezésre bocsátási paraméterek, például a céleszközcsalád vagy a használni kívánt alapkép konfigurálásához.
- Az így kapott konfigurációt a /etc/rpi-sb-provisioner/config és így nézhet ki:
CUSTOMER_KEY_FILE_PEM=
CUSTOMER_KEY_PKCS11_NAME=
GOLD_MASTER_OS_FILE=/srv/rpi-sb-provisioner/images/deb12-arm64-ix-base.img
PROVISIONING_STYLE=naked
RPI_DEVICE_BOOTLOADER_CONFIG_FILE=/srv/rpi-sb-provisioner/bootloader_config_files/bootloader-gpio17.naked
RPI_DEVICE_EEPROM_WP_SET=
RPI_DEVICE_FAMILY=5
RPI_DEVICE_FIRMWARE_FILE=/lib/firmware/raspberrypi/bootloader-2712/latest/pieeprom-2025-10-17.bin
RPI_DEVICE_LOCK_JTAG=
RPI_DEVICE_RETRIEVE_KEYPAIR=
RPI_DEVICE_STORAGE_CIPHER=aes-xts-plain64
RPI_DEVICE_STORAGE_TYPE=emmc
RPI_SB_PROVISIONER_MANUFACTURING_DB=/srv/rpi-sb-provisioner/manufacturing.db
RPI_SB_WORKDIR=Használat
- Például, ha hivatalos Raspberry Pi Compute Module 5, állítsa be a J2 jumper-t az eMMC-indítás letiltására.
- Csatlakoztassa a CM5-öt a provisioning hosthoz USB-n keresztül. A feltöltési folyamat automatikusan elindul.
- Ha a provisioning befejeződött, távolítsa el a jumper-t és csatlakoztasson tápegységet - a készülék mostantól eMMC-ről fog bootolni.
Előnyök
- Teljesen automatizált eszközbeépítés
- Egységes konfiguráció minden egységben
- Könnyű integráció a gyártási rendszerekkel vagy backend API-kkal
- Reprodukálható - nincsenek kézi módosítások vagy következetlenségek az eszközök között.
A folyamat kiterjesztése
Az üzembe helyezési munkafolyamat kiterjeszthető a következőkre:
- API-hívások az eszközök backend szolgáltatásokhoz történő regisztrálásához
- Tanúsítvány generálása biztonságos indításhoz vagy titkosításhoz
- Hardveres hitelesítés vagy funkcionális tesztek az aktiválás előtt
A címen rpi-sb-provisioner, a rendelkezésre bocsátás az Ön építési és telepítési csővezetékének integrált lépése lesz - nem pedig utólagos gondolat.
Cikkek ebben a sorozatban
- Building a Production-Ready Linux for Raspberry Pi Compute Module 5
- A raktár operációs rendszertől a gyártási platformig
- Customizing Raspberry Pi OS with rpi-image-gen
- Rendszer robusztussága - A/B gyökér fájlrendszer elrendezésének tervezése
- Provisioning - Az első indítás automatizálása rpi-sb-provisioner
- OTA and Lifecycle — Software Updates with SWUpdate
Források
- rpi-image-gen: https://github.com/raspberrypi/rpi-image-gen
- rpi-sb-provisioner: https://github.com/raspberrypi/rpi-sb-provisioner
- SWUpdate: https://github.com/sbabic/swupdate
- swugenerator: https://github.com/sbabic/swugenerator