bhyve + grub + vm-bhyve

Nem vagyok elégedett azzal, ahogy a különböző doksik és segédprogramok a bhyve alatti linuxos VM-ek bootját kezelik. Jellemzően odáig eljut a leírás, hogy hogyan telepítjük azt a Linuxot. Majd mindenhol az van, hogy kézzel kiválasztjuk a grub-ban a betöltendő kernelt, meg initrd-t. Esetleg (pl. a vm-bhyve default konfigjaiban) beledrótozzák valahova a grub-nak átadandó parancsokat - amikben mondjuk lesz kernel-verziószám. Ami nekem azért nem tetszett, mert valahányszor a VM-ben kernel frissítés zajlik, annyiszor kell ezt a rohadt konfigot módosítani - magán a FreeBSD hoston. Amiben az a durva, hogy e linuxos VM-ek boot-loadere - a grub-bhyve - elvben Grub2 alapú, és sok Linux terjesztés szintén már Grub2-t használ. Mivel én gyakorlatilag az összes VM-ben LVM-mel telepítek, ez ugye egy plusz átadott (ronda) kernel paramétert is jelent - duplán nem szép, hogy kézzel vacakoljak a hoston általam karbantartott grub.conf-fal. Úgyhogy kicsit játszadoztam és kisakkoztam a dolgot:

Debian8/Ubuntu esetén a VM-ben /boot/grub/grub.cfg a konfig fájl. A fájlnév OK, így a grub-bhyve-nak "-r hd0,msdos1 -d /grub" paramétereket átadva (persze a megfelelő device.map fájl esetén) már megtalálja a VM virtuális diszkjén a grub.cfg-t, amit normális esetben a kernel frissítés korrekten karbantart.

CentOS7 annyival trükkösebb, hogy ott /boot/grub2/grub.cfg a fájl neve - értelemszerűen "-r hd0,msdos1 -d /grub2" a két szükséges paraméter.

Egyelőre a Slackware-es VM-mel nem tudok mit kezdeni - gyárilag ugye az még Lilo-zik, illetve azokkal a különböző nem-FreeBSD-féle *BSD-kkel vagyok még bajban, amik ugye natívan nem Grub-ot használnak (de grub-bhyve-val töltendőek a Vm-be). Mindenesetre eggyel előrébb vagyok - akár kézzel, akár a vm-bhyve-val piszkálom a VM-eket, végre elfelejthető a konfig folyamatos módosítása. vm-bhyve esetén ugyanis ezeket a paramétereket kell a $VM.conf fájlba beleírni:


# grub_run_partition="msdos1" # ez a grub-bhyve-nál az alap, szóval meg se kell adni
grub_run_directory="/grub" # vagy "/grub2" a CentOS-en

Hozzászólások

Nem lenne jobb BtrFS-el telepíteni a játszós Linuxokat? Mondjuk én már production-ben is azt használom. Meg mégis csak 3 FS réteg lenne egyben tömörítéssel plusz Raid meg LVM helyett.

off

Elég gyors és jó a btrfs? Amikor próbálgattam, csak bajom volt vele, ennek ellenére a backup HDD-men meghagytam, mert nem volt kedvem újra formázni. Viszont néhány GB-os filerendszereknél mglepő dolgokat produkált, amitől nem voltam túl boldog.

tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE