Lennart Poettering javasolta, hogy a systemd rendszermenedzserbe beépíthető legyen egy olyan módosítás, amely lehetővé teszi a rendszer HTTP protokollon keresztül egy külső hostról származó gyökérfájlrendszer (root FS) képének betöltését. A módosítás lényege az, hogy a systemd képessé válik nemcsak a lemezkép letöltésére HTTP-n keresztül a rendszer indulásának korai szakaszában, hanem a letöltött kép kicsomagolására, a blokk eszközhöz történő loopback módban való kapcsolására, a blokk eszköz /sysroot-ként való csatolására, és onnan a rendszer betöltésére.
A rendszer indítása közbeni lemezképek letöltésének támogatását a systemd-import-generator már a systemd 257-es verziójába integrálták. A többi funkció még munka prototípus állapotban van, amely továbbfejlesztést igényel. A megvalósítás jelenleg nem támogatja a teljes betöltési ciklust, de a jövőben tervezik a funkciót kiterjeszteni az UEFI HTTP Boot univerzális kernel képének (UKI - Unified Kernel Image) betöltésére, amely egy fájlban tartalmazza az UEFI (UEFI boot stub) betöltőt, a Linux kernel képét és az initrd memóriába betöltendő rendszerkörnyezetet.
A rendszerkép letöltésére szolgáló URL-t az EFI-képhez az UEFI HTTP Boot beállításaiban megadott URL alapján tervezik kiszámítani (például az EFI HTTP Boot betöltésekor a „http://example.com/somedir/myimage.efi” URL-t, amely a UKI initrd feldolgozóban található, a rootfs képet úgy tölti le, mint a „http://example.com/somedir/myimage.raw.xz”). A jövőben a HTTP mellett az NVMe-over-TCP technológia támogatását is tervezi a kép elérhetőségének biztosítására, amely lehetővé teszi az NVMe tárolók hálózaton keresztüli elérését (NVM Express over Fabrics), TCP protokoll felhasználásával.
Azt feltételezik, hogy a külső hostról származó képekből való betöltés megkönnyíti a modern, változatlan („immutable”) operációs rendszerek tesztelésének megszervezését a valós hardveren. A fejlesztő a saját számítógépén az mkosi segédprogram segítségével létrehozhat egy képet a rendszermenedzsment környezetről, és azt HTTP-n keresztül elérhetővé teheti a „mkosi -f serve” paranccsal. Annak a számítógépnek, ahol a rendszer működését tesztelni kell, elegendő, ha engedélyezi az EFI indítást HTTP-n, és hozzáadja a betöltendő kép URL-jét a következő parancs kiadásával: kernel-bootcfg —add-uri=http://192.168.47.11:8081/image.efi —title=testloop —boot-order=0
Ezután egyszerűen újraindíthatja a számítógépet, és az betölti az UKI alapkernel képét, amely ezután betölti a fejlesztő által előkészített lemezképet a gyökér fájlrendszerrel. Az EFI HTTP-ből való betöltés kikapcsolása előtt minden újraindítás friss rendszerképet fog indítani. Ez a tesztelés nem érinti a helyi lemezeket.
Forrás: opennet.ru
