Installare e configurare una Macchina Virtuale con Debian in ambiente Hyper-V

Anche se Debian non è tra le distro linux supportate in ambiente Hyper-V, la si può tranquillamente installare con l’unica accortezza di usare una scheda di rete legacy, altrimenti non verrà vista dal sistema.

image

Per questa guida ho installato una versione di debian testuale senza l’ìnterfaccia grafica, in particolar modo l’ultima versione di Debian la 6 che una volta installata e aggiornata usa il kernel 2.6.32:

image

La macchina virtuale così installata funziona perfettamente ma non integra i componenti integrati e quindi non può essere gestita dall’host Hyper-V:

image

Per prima cosa aggiorniamo il nostro sistema con i comandi:

# apt-get update

# aptitude update

dopodichè dobbiamo scaricare i sorgenti del kernel 2.6.32 per poi ricompilarlo con i moduli necessari:

# apt-get install build-essential libncurses5-dev kernel-package fakeroot linux-headers-2.6.32-5-686 linux-source-2.6.32

Ora creiamo una nuova immagine del kernel a partire dalla versione 2.6.36:

# cd /usr/src

# wget -c http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.36.tar.bz2

# bzip2 -d linux-2.6.36.tar.bz2

# tar xf linux-2.6.36.tar

# cd linux-2.6.36/

# cp /boot/config* ./.confing

# make menuconfig

Nel menù Device Drivers-> Staging drivers selezionare la voce Microsoft Hyper-V client drivers

image

a questo punto si possono togliere tutti quei driver che non saranno mai usati nella macchina virtuale, USB, PCI, etc. etc. dopodichè uscire salvando la configurazione del nuovo kernel.

image

Dopo aver salvato la configurazione non ci resta che iniziare la compilazione del kernel aggiungendo il suffisso hyper-v per distinguerlo.

# make-kpkg clean

# fakeroot make-kpkg –initrd –append-to-version=-hyper-v kernel_image kernel_headers

La compilazione del kernel vera e propria dura diverso tempo (un’ora circa), al termine della quale nella directory /usr/src avremo due file con estensione .deb:

linux-headers-2.6.36-hyper-v_2.6.36-hyper-v-10.00.Custom_i386.deb
linux-image-2.6.36-hyper-v_2.6.36-hyper-v-10.00.Custom_i386.deb

che possono essere utilizzati in un’altra macchina virtuale senza dover ricompilare di nuovo il kernel.

Procediamo con l’installazione del nuovo kernel con il comando:

# dpkg -i linux-image-2.6.36-hyper-v_2.6.36-hyper-v-10.00.Custom_i386.deb

Ora editiamo il file /etc/initramfs-tools/modules e aggiungiamo i moduli che devono essere caricati all’avvio:

hv_vmbus

hv_storvsc

hv_blkvsc

hv_netvsc

salviamo il file ed aggiorniamo la configurazione con il comando:

update-initramfs -u -k 2.6.36-hyper-v

e riavviamo la macchina che partirà in automatico con il nuovo kernel:

image

e ora l’host riesce a comunicare con la macchina guest:

image
image

possiamo così spegnere la maccina virtuale direttamente da Hyper-V.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *