Pro virtualizaci na Windows používám Hyper-V, ale když jsem si nainstaloval linuxový desktop, narazil jsem na to, že maximální zobrazovací rozlišení je 1920×1080. Což mě neskutečně štvalo, protože mám ultrawide monitor 🙂

U Windowsích desktopů a serverů je možné to pohodlně obejít tím, že povolíte Enhanced Session, neboli Rozšířenou relaci. Ta využívá RDP a díky tomu se rozlišení virtuálky plně přizpůsobí Vaší obrazovce. Ve Windows to funguje nativně, stačí zaškrtnout odpovídající políčko.

A tak má úvaha byla logická – dalo by se to udělat i na linuxu?

Ano, dalo.

Instalace součástí

Předpokládejme že už máte nainstalovanou nějakou linuxovou virtuálku. Já budu používat jako ukázku Manjaro linux, což je od Archu odvozená distribuce. S drobnými úpravami ale to samé dokážete na jakémkoliv linuxu!

Nejprve si raději ověříme, že je v Hyper-V zapnuta podpora Enhanced Session.

Nastartujeme virtuálku a nainstalujeme si Hyper-V driver:

$ su
$ pacman -Sy 
$ pacman -S xf86-video-fbdev
$ systemctl restart lightdm

Následně si naklonujeme z Gitu aktuální vm-toolsy, které pro Enhanced Session mode potřebujeme.

$ sudo pacman -Sy
$ sudo pacman -S git
$ cd Downloads
$ git clone https://github.com/Microsoft/linux-vm-tools.git ./linux-vm-tools
$ cd linux-vm-tools/arch
$ ./makepkg.sh
$ sudo ./install-config.sh

Ve své domovské složce najděte soubor .xinitrc

V něm vyhledejte řádek :

local dbus_args=(--sh-syntax --exit-with-session)

a smažte parametr –exit-with-session

Výsledek by měl být tedy tento:

local dbus_args=(--sh-syntax)

Nyní virtuálku vypněte.

Konfigurace virtuálky

Ve Windows spusťte PowerShell jako admin a zadejte příkaz:

Set-VM -VMName NAZEV-VIRTUALKY -EnhancedSessionTransportType HvSocket

Tím dojde k aktivaci Enhanced Session pro tuto virtuálku.

Pokud by se něco podělalo, můžete tuto funkci opět změnit a to příkazem:

Set-VM -VMName NAZEV-VIRTUALKY -EnhancedSessionTransportType VMBus

Bootujeme

Nyní můžete virtuálku spustit. Pokud jste vše dodrželi (nezapomněli jste sudo u ./install-config.sh a podobně) měla by Vás uvítat tato sympatická obrazovka, s výběrem rozlišení.

Když zvolíte připojit, bude nutné zadat své přihlašovací údaje, normálně jako do desktopu.

A máte hotovo, můžete si užívat virtuální desktop v plném a pokud jste zvolili volbu Celá obrazovka, tak i libovolném, dynamicky se měnícím rozlišení! Praktické pokud máte víc monitorů a okno s RDP mezi nimi často přesouváte.

Tak a je hotovo. Doufám že Vám návod posloužil a užíváte si tak virtuálky na celou plochu.

Pro Kali linux jsem našel super skript, který Vám/mě to urychlí: https://gist.github.com/mimura1133/25451be04929d65993e0fb658d0b6890
Nejspíše půjde využít i na Ubuntu, Mintu a Debianu.