User Story

Otthon elégedett Hyper-V userként nemrégiben az történt velem, hogy észre sem vettem, és egy hónapig futott egy VM a háttérben a gépemen. Az okozta, hogy a Hyper-V managerben ha elindítok egy VM-et, az alap beállítások mellett, és a hosztot lekapcsolom, akkor újraindítás után a guest a kikapcsoláskori állapotát veszi fel, azaz maga is elindul. A Hyper-V managert megnyitva látom csak (nyilván máshogy is láthanám), hogy mi a guest állapota.

Ezzel szemben jelenleg a VirtualBox használatára vagyok kárhoztatva, ami hasonló funkcionalitást nem ad kulcsrakészen, bár az elemei elérhetőek.

A VirtualBox a VMware Player és Workstation termékekhez hasonlóan elsősorban interaktív felhasználásra szánt termék. Sajnos a mouse grabbinget nem lehet csak szöveges módban futó guestnél kikapcsolni (nekem legalábbis nem sikerült). Emellett elérhetőek különféle parancssori eszközök, melyekkel manipulálható. Ezek közül a VboxHeadless nevű programot használnám a headless futáshoz, azonban ez is megnyit egy ablakot a gép futásának idejére.

Szerencsére PowerShell alatt van egy kiváló cmdlet, a start-process, mely megoldást kínál erre a problémára. Sajnos azonban a powershell scripteket digitálisan kellene aláírnom a policy szerint, tehát marad a jó öreg cmd.exe használtata, onnan indítva a powershellt egy parancs erejéig:

start-coriolis.cmd

powershell "start-process  -WindowStyle Hidden 'C:\Program Files\Oracle\VirtualBox\VBoxHeadless.exe' '-s coriolis'"

A leállításánál könnyebb dolga van az embernek:

stop-coriolis.cmd

start "vboxmanage" /min "C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" controlvm coriolis acpipowerbutton

Nem ugyanaz az élmény, de most megteszi. Már csak az kellene, hogy ssh port forwardolása is működjön NAT-olt virtuális hálózati kapcsolatnál, ha ugyanakkor a http forwardolása működik. Egy újabb verzióban talán ez megy, de ott meg más nem megy. Hiába, ez is egy kiváló Oracle termék, bár furcsa módon nem próbált Ask toolbart telepíteni.

Utóirat

Időközben megtaláltam a hálózati beállításokra is a megoldást. A VM-eknek 2 hálózati adapter kell: egy NAT-olt, amin az internetet éri el a VM az intraneten való megjelenés és zavarkeltés nélkül, valamint kell egy Host-Only is, ami a nevével ellentétben nem csak a hosttal, de a többi VM-mel is tud kommunikálni. Így a kis teszthálózatom már megy is, és a hostról jól be lehet ssh-zni rájuk!