Lennart Poettering mengusulkan untuk memasukkan perubahan dalam sistem manajer systemd yang akan memungkinkan sistem untuk boot menggunakan citra sistem berkas root yang diambil dari host eksternal melalui HTTP. Perubahan tersebut bermuara pada perluasan systemd dengan kemampuan tidak hanya mengunduh citra disk melalui HTTP pada tahap boot awal, tetapi juga membongkar citra yang diunduh, mengikatnya ke perangkat blok dalam mode loopback, memasang perangkat blok sebagai /sysroot dan mem-boot sistem dari sana.
Dukungan untuk mengunduh citra disk selama proses booting sistem menggunakan systemd-import-generator sudah termasuk dalam systemd 257. Fungsionalitas yang tersisa masih dalam tahap prototipe dan memerlukan pengembangan lebih lanjut. Implementasi ini belum mendukung siklus booting penuh, tetapi rencana di masa mendatang mencakup perluasan fungsionalitas ini untuk menyertakan pemuatan citra kernel universal (UKI) melalui UEFI HTTP Boot, yang menggabungkan boot loader UEFI (UEFI boot stub) dan citra kernel dalam satu file. Linux dan lingkungan sistem initrd dimuat ke dalam memori.
URL untuk memuat citra sistem direncanakan akan dihitung berdasarkan URL yang ditentukan untuk citra EFI dalam pengaturan UEFI HTTP Boot (misalnya, saat memuat melalui EFI HTTP Boot "http://example.com/somedir/myimage.efi", pengendali initrd UKI akan memuat citra rootfs sebagai "http://example.com/somedir/myimage.raw.xz"). Di masa mendatang, selain HTTP sebagai transportasi untuk memperoleh gambar, direncanakan akan ditambahkan dukungan terhadap teknologi NVMe-over-TCP, yang memungkinkan akses ke drive NVMe melalui jaringan (NVM Express over Fabrics) menggunakan protokol TCP.
Diharapkan bahwa boot dari gambar yang diperoleh dari host eksternal akan menyederhanakan pengorganisasian pengujian sistem operasi modern yang tidak dapat diubah pada perangkat keras nyata. Pengembang dapat membuat gambar dengan lingkungan sistem di komputernya menggunakan utilitas mkosi dan membuatnya tersedia melalui HTTP menggunakan perintah "mkosi -f serve". Pada komputer tempat Anda ingin menguji sistem, Anda hanya perlu mengaktifkan boot HTTP di EFI dan menambahkan URL image yang dapat di-boot dengan perintah: kernel-bootcfg —add-uri=http://192.168.47.11:8081/image.efi —title=testloop —boot-order=0
Setelah itu, Anda tinggal me-reboot komputer dan komputer akan memuat citra kernel UKI standar, yang kemudian akan memuat citra disk yang disiapkan oleh pengembang dengan FS root. Hingga boot HTTP dinonaktifkan di EFI, setiap booting ulang komputer berikutnya akan mengakibatkan booting citra sistem baru. Jenis pengujian ini tidak memengaruhi disk lokal dengan cara apa pun.
Sumber: opennet.ru
