Progetto

Generale

Profilo

Actions

Installare una macchina virtuale Debian su Proxmox

Proxmox VE è una potente piattaforma di virtualizzazione che consente di sostituire senza problemi e senza costi di licenza la più nota VmWare, supportando configurazioni avanzate, come clustering, HA, iperconvergenza, e molto altro. Ha inoltre il vantaggio di poter utilizzare sia le classiche macchine virtuali su cui è possibile installare qualunque sistema operativo, che il nuovo approccio, più veloce ed efficiente, dei container Linux.

Vedremo in questo articolo come è possibile installare una macchina virtuale Debian, usando una configurazione che possa risultare adatta all'uso della stessa con Proxmox, in particolare riguardo alle strategie di partizionamento del disco da adottare per semplificare le eventuali future operazioni di allargamento del disco. Tratteremo una installazione eseguita attraverso la rete, usando buona parte dei default predisposti dall'installer ufficiale di Debian, utilizzando la cosiddetta modalità netinst. Per questo occorrerà scaricare la ISO del CD di installazione, che può essere ottenuta da Debian scaricandola a partire dalla pagina: https://www.debian.org/CD/netinst/

La creazione di una macchina virtuale su Proxmox.

Il primo passo da fare è creare dall'interfaccia web di Proxmox la macchina virtuale che andremo ad installare. Dato che per l'installazione sarà necessaria l'immagine ISO di un CD di installazione, sarà opportuno scaricarlo preventivamente in modo da poterlo associare alla macchina durante la procedura di creazione della stessa (anche se si può sempre aggiungerlo in un secondo tempo).

La piattaforma Proxmox prevede che le immagini ISO possano essere salvate su uno qualunque degli storage disponibili che supporti il caricamento dei file, in genere nell'installazione di default viene impostato sempre uno storage "local" che corrisponde alla directory /var/lib/vz/ del server Proxmox, che è quello da preferire a questo scopo. A questo si affianca normalmente, sempre in caso di installazione di default, uno storage local-lvm che può solo contenere immagini di disco, e che sarà quello che useremo invece per il disco della macchina virtuale.

Selezione caricamento immagine ISO su storage local

Per il caricamento dell'immagine ISO basterà selezionare lo storage "local" dal menù a sinistra, e poi dal sottomenù a fianco la voce "ISO Images", da li si potrà caricare direttamente un'immagine ISO, se disponibile sul proprio PC, o farla scaricare direttamente dal server, indicandone la URL. Nel nostro caso useremo questa seconda possibilità, premendo sul pulsante "Download from URL", ed indicando come URL quella ottenibile dai link pubblicati, nella pagina citata, dove in basso si dovrà scegliere l'immagine per l'architettura amd64.

Inserimento download URL per la ISO di netinst

ed una volta eseguito lo scaricamento, di cui sarà mostrato un progressivo in una finestra, si potrà verificare la presenza del file debian-12.5.0-amd64-netinst.iso. Lo stesso risultato si potrà ottenere anche a riga di comando, posizionandosi nella directory delle ISO all'interno dello storage local e scaricando direttamente il file li, con:

cd /var/lib/vz/template/iso/
wget https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-12.5.0-amd64-netinst.iso

Una volta che l'immagine ISO per l'installazione sia disponibile (qui si è preso quella più recente, per Debian 12 Bookworm) si potrà passare alla creazione di una nuova macchina virtuale utilizzando il wizard attivabile dal pulsante blu "Create VM" in alto a destra. Si otterrà allora una prima schermata, in cui verrà proposto il primo VMID libero; qui sarà sufficiente indicare un nome nella casella "Name":

Prima schermata wizard di creazione

e premendo "Next" si passerà alla seconda schermata in cui impostare l'uso della ISO appena scaricata nella casella ISO Image (che è obbligatoria e resta cerchiata rossa fintanto che non si è effettuata la scelta) utilizzando il relativo menù a tendina che presenta tutte quelle disponibili:

Seconda schermata wizard di creazione

sulla terza schermata vengono proposte le impostazioni di sistema per le emulazioni usate dalla macchina virtuale (per la scheda grafica, il tipo di macchina, di BIOS, di controller SCSI per i dischi, ecc.), qui in genere a meno di esigenze particolare non c'è da cambiare nulla, e si potrà passare alla schermata successiva dove si configureranno i dischi. Il default qui è usare il primo storage disponibile, che in genere è local, che non è il più adatto perché le immagini dei dischi sarebbero su file, e quando è disponibile usare uno storage che accede direttamente ad un dispositivo fisico (come local-lvm) le prestazioni sono migliori. Pertanto si provvederà a inserire questo dal menù a tendina della casella storage. Si potrà anche indicare la dimensione del disco, ma in questo caso ci limiteremo ad accettare il default, il disco potrà infatti essere sempre ampliato in un secondo momento in maniera relativamente semplice se installeremo la macchina come indicato in seguito.

Quarta schermata wizard di creazione

nella schermata successiva si potranno impostare il numero ed il tipo di processori, ed anche qui si possono usare i default illustrati, i valori scelti infatti potranno essere cambiati direttamente dall'interfaccia di gestione una volta creata la macchina in un qualunque momento successivo, al prezzo di un riavvio della stessa, lo stesso dicasi per la successiva schermata dove viene proposta una dimensione della RAM assegnata alla macchina virtuale.

Quinta schermata wizard di creazione

L'ultima schermata di configurazione è quella relativa alla rete, dove si dovrà scegliere il bridge su cui attestare la prima interfaccia di rete della macchina (che dipende dalla configurazione del server Proxmox). In questo caso si potrà configurare solo una interfaccia di rete, se se ne vogliono avere più di una le si dovranno aggiungere una volta creata la macchina virtuale dall'interfaccia di gestione dell'hardware della stessa; anche in questo caso si possono accettare i default (eventualmente eliminando la spunta Firewall quando non si intende usare Proxmox per la relativa gestione, che comunque è disattivata di default a livello generale):

Settima schermata wizard di creazione

Finita la serie di schermate di impostazione, si dovrà concludere la creazione della macchina virtuale sulla schermata riassuntiva finale, ma è sempre possibile viaggiare avanti ed indietro nelle scelte fatte, eventualmente modificandole, con i pulsanti "Back" e "Next", chiudendo la creazione con "Finish". Una volta fatto questo la nuova VM comparirà nell'elenco del menù a sinistra, e si potrà cliccare sulla stessa per ottenere la relativa interfaccia di configurazione:

Selezione della macchina appena creata

L'installazione di Debian

Una volta creata la macchina virtuale si potrà procedere ad eseguire una installazione di Debian, usando il CD di netinst che abbiamo predisposto. Per farlo la si potrà avviare dal pulsante "Start", ed una volta partita premendo sul pulsante "Console" si aprirà una nuova finestra del browser con la relativa console a cui ci si potrà collegare. In questo caso otterremo la schermata di avvio dal CD di installazione di Debian, dato che questo all'inizio è l'unico dispositivo avviabile:

Schermata di avvio del CD di netinst

qui si potrà selezionare la modalità di installazione, scegliendo la seconda voce, "Install" dovendo installare una macchina server sulla quale non serve l'interfaccia grafica, facendo con questo partire il programma semigrafico che esegue la procedura di installazione del sistema. Chi è pratico della stessa, può saltare i prossimi tre paragrafi, andando direttamente all'unico che ha dei requisiti specifici per l'uso con Proxmox, che è quello sul "Partizionamento del disco".

Scelta della localizzazione

La procedura di installazione prevede una serie di passi da eseguire controllati dalle richieste delle impostazioni eseguite dall'installatore in altrettante schermate, in cui ci si sposta con le frecce e, il tabulatore, ed in cui si seleziona una scelta con l'invio. Qualora sia necessario può essere richiesto di inserire dati drettamente, o possono essere proposte dei menù di scelta su cui scorrere per selezionare quella voluta. La prima richiesta è quella della scelta della lingua che il programma userà per tutte le schermate successive; il default è l'inglese ma si potrà scegliere dall'elenco presentato di quelle disponibili l'italiano:

Prima schermata, scelta della lingua

ma se si esegue questo cambiamento si otterrà comunque un avviso del fatto che alcuni dialoghi potrebbero restare non tradotti, e si potrà proseguire solo accettando esplicitamente la cosa nella richiesta successiva:

Seconda schermata, conferma della lingua

Verrà poi chiesto di selezionare in quale paese ci si trova (l'italiano viene infatti usato anche in Svizzera) per scegliere opportunamente il fuso orario ed altre configurazioni della localizzazione, una volta fatto questo si potrà scegliere che disposizione della tastiera usare (con predefinita quella italiana). In tutti questi passi eccetto la selezione iniziale della lingua, sarà sufficiente premere invio.

Terza schermata, scelta del paese
Quarta schermata, scelta della tastiera

Configurazione della rete

Una volta scelta la lingua il passo successivo prevede la configurazione della rete, in questo caso verrà tentata una auto-configurazione che potrà avere successo se è raggiungibile un server DHCP. In genere nel caso dell'installazione di server questo non è disponibile ed è comunque preferibile effettuare una configurazione statica, per evitare dover dipendere dal funzionamento del DHCP. Per questo occorre eseguire una configurazione manuale, per cui al messaggio di fallimento dell'autoconfigurazione occorrerà proseguire con un invio, ed accettare nella schermata successiva la configurazione manuale della rete:

Sesta Schermata, configurazione manuale della rete

Con questa scelta il programma di installazione chiederà un indirizzo IP con la relativa netmask in notazione CIDR:

Settima schermata, configurazione IP/net

e quindi prima l'indirizzo del gateway, poi quello del DNS, poi il nome della macchina ed infine il dominio in cui si colloca:

Ottava schermata, configurazione IP GW
Nona schermata, configurazione IP DNS
Decima schermata, configurazione hostname
undicesima schermata di configurazione, nome a dominio

Configurazione degli accessi

Completata la configurazione della rete, verrà richiesto di impostare le credenziali di accesso per l'amministratore (due volte per evitare errori di battitura):

dodicesima schermata di configurazione, root password
tredicesima schermata di configurazione, root password

e poi verrà richiesta la creazione di un utente normale, di cui indicare prima un nome e cognome, e poi un username, e di nuovo due volte la password (come per root):

quattoridicesima schermata di configurazione, creazione utente
quindicesima schermata di configurazione, creazione utente

Partizionamento del disco

Questo è passo più rilevante nella configurazione della macchina virtuale ad uso di Proxmox. Il programma di installazione presenta infatti diverse opzioni per un partizionamento guidato, calibrate però sulle necessità di installazione su una macchina fisica, ma queste non mai sono una scelta ottimale per una macchina virtuale in cui lo spazio disco allocabile può essere gestito su un unico disco virtuale la cui allocazione effettiva sullo spazio disco fisico viene gestita esternamente da Proxmox. Per questo è sempre opportuno scegliere il partizionamento manuale:

diciassettesima schermata di configurazione, scelta partizionamento

Questa scelta avvierà la serie di schermate che consentono la gestione del partizionamento dell'unico disco (virtuale) disponibile, questo andrà prima selezionato:

diciottesima schermata di configurazione, scelta disco

e siccome il disco inizialmente è vuoto, andrà chiesta la creazione della tabella delle partizioni sullo stesso:

diciannovesima schermata di configurazione, crea partition table

poi, selezionando lo spazio libero:

ventesima schermata di configurazione, scegli spazio disco libero

si dovrà creare una prima partizione, che useremo per la swap, impostandone la dimensioni (4G sono ormai sempre più che sufficienti, dimensioni maggiori non hanno senso per i server che non devono supportare la sospensione su disco), occorrerà poi indicare il tipo di partizione (primaria) e la posizione nel disco della stessa (inizio):

ventunesima schermata di configurazione, crea prima partizione
ventiduesima schermata di configurazione, impostazione swap size
ventitreesima schermata di configurazione, tipo di partizione
ventiquattresima schermata di configurazione, posizione della partizione

questi passi indicheranno come creare la partizione sul disco, ma una volta compiuti se ne dovrà indicare le modalità d'uso da parte del sistema dalla successiva schermata:

venticinquesima schermata di configurazione, uso della partizione

premendo sulla scelta predefinita (che è usarla per la radice del filesystem del sistema), si otterrà un menù delle alternative su cui occorrerà spostarsi per selezionare l'utilizzo voluto (area di swap):

ventiseiesima schermata di configurazione, scelta swap

confermando poi la scelta per terminare l'impostazione:

ventisettesima schermata di configurazione, conferma swap partition

A questo punto si dovrà ripetere la scelta dello spazio libero per creare una seconda partizione:

ventottesima schermata di configurazione, scelta seconda partizione

e ripetere i passaggi precedenti, indicando di creare una nuova partizione, impostandone le dimensioni (stavolta accettando quelle proposte che prendono tutto lo spazio libero rimanente), indicando di nuovo come tipo di partizione quella primaria (il default stavolta sarebbe logica, ma va cambiato); prendendo tutto lo spazio non verrà chiesta la posizione della partizione. A questo punto si verrà di nuovo riportati sulla schermata per configurare l'uso della partizione, che proporrà l'uso della stessa per la radice del sistema, e la si potrà scegliere senza fare modifiche:

trentaduesima schermata di configurazione, conferma scelta seconda partizione

Fatto questo il programma di installazione ci riporterà nella schermata iniziale della gestione del partizionamento, senza più spazio disponibile e bisognerà scegliere di terminare la procedure a salvare le scelte fatte:

trentatreesima schermata di configurazione, chiusura partizionamento

e confermare le modifiche ai dischi:

trentaquattresima schermata di configurazione, conferma partizionamento

Con questa ultima conferma inizierà l'installazione del sistema base nel disco appena partizionato, con i pacchetti disponibili nel CD di installazione:

progresso della prima fase di installazione

Configurazione delle fonti aggiuntive

Dato che si tratta di un CD per l'installazione di rete i pacchetti in esso presenti sono la frazione minimale necessaria a poter eseguire le fasi iniziali dell'installazione, pertanto verrà prima chiesto se si vogliono analizzare eventuali CD aggiuntivi, cosa che non serve, visto che non ne abbiamo, per cui si dovrà rispondere negativamente alla richiesta:

configurazione fonti, prima schermata, rifiuta altri CD

dopo di che verrà chiesto di configurare gli accessi ai mirror remoti dei pacchetti Debian; questi sono ordinati per paese dei mirror, ed una volta selezionato, verrà proposta una lista dei relativi indirizzi; in genere in testa c'è sempre deb,debian.org che è l'indirizzo per fare riferimento in maniera automatica al mirror migliore, ed è sempre il caso di usarlo:

configurazione fonti, seconda schermata, paese mirror repo
configurazione fonti, terza schermata, scelta mirror

la schermata successiva consente di indicare un eventuale proxy HTTP da usare per l'installazione, da lasciar vuoto premendo invio quando, come quasi sempre, non ce n'è bisogno, questo avvierà una seconda fase di installazione dei pacchetti dai repository appena impostati:

progresso installazione pacchetti

dopo di che verrà chiesto se partecipare o mano al sondaggio anonimo di uso dei pacchetti (il default è no):

richiesta popularity contest

Selezione del software da installare e finalizzazione

Una volta impostati i mirror per lo scaricamento, verrà richiesta la selezione del software aggiuntivo da installare via rete, in questo caso si dovrà selezionare soltanto il server SSH e le utilità di sistema standard, si potrà ripetere l'installazione di quanto fosse eventualmente necessario al riavvio della macchina con il comando tasksel:

richiesta tasksel

Completata la scelta verrà effettuata l'installazione di quanto manca, mostrando una barra di progresso; una volta finita l'ultimo passo è quello di impostare il bootloader per l'avvio dal disco appena installato:

richiesta installazione grub

che porterà alla schermata di selezione del disco, con una unica scelta predefinita da effettuare:

installazione sul disco di boot

a questo punto verranno eseguite le operazioni di completamento dell'installazione:

progressivo finalizzazione installazione

completate le quali l'installazione sarà completa e si potrà riavviare la macchina:

richiesta di riavvio finale

attendendo che la procedura di boot si completi per arrivare alla console:

console dell'installato

Aggiornato da Simone Piccardi 7 mesi fa · 11 revisions