Come espandere le partizioni del disco nelle VM Linux
Uno spazio su disco virtuale insufficiente può causare problemi, tra cui prestazioni scadenti. Ad esempio, si configura un disco virtuale, si creano partizioni e si installa un sistema operativo guest su una di queste partizioni. Successivamente, ci si accorge che lo spazio su disco è insufficiente. In questo caso, è necessario estendere la dimensione del disco.VMware offre opzioni di configurazione flessibili per l’hardware virtuale come CPU, memoria e dischi, consentendo di estendere la dimensione di un disco virtuale esistente. Si noti che una partizione deve essere ridimensionata manualmente perché lo spazio su disco non allocato viene aggiunto dopo l’estensione di un disco virtuale. Continuare a leggere per conoscere i diversi metodi di ridimensionamento delle partizioni in diverse impostazioni.
Requisiti
Assicurarsi che siano soddisfatte le seguenti condizioni prima di ridimensionare un disco virtuale e le partizioni su quel disco:
- È possibile aumentare le dimensioni del disco virtuale mentre una VM è in esecuzione. Tuttavia, potrebbe essere necessario riavviare una VM affinché il sistema operativo rilevi il disco ridimensionato.
- Per poter essere ridimensionato, un disco virtuale non deve contenere snapshot. Se la VM contiene snapshot, eliminarli (consolidarli) prima di ridimensionare un disco virtuale e regolare la dimensione della partizione del disco.
- Si consiglia di eseguire il backup della VM prima di eseguire operazioni sui dischi. La modifica delle dimensioni delle partizioni del disco può essere rischiosa se si commette un errore durante il processo di configurazione.
Estendere le partizioni del disco in Linux Ubuntu
In questa sezione spieghiamo come estendere le partizioni in Linux dopo aver espanso i dischi virtuali su un esempio di Ubuntu. È possibile utilizzare questo flusso di lavoro su Ubuntu 18, 19, 20, 22 e versioni successive. Esistono diversi metodi per regolare le dimensioni delle partizioni del disco ed estendere le partizioni Linux. È possibile utilizzare gli strumenti della riga di comando o gli strumenti con l’interfaccia utente grafica. Innanzitutto, espanderemo un disco virtuale di una VM Linux su un server ESXi. Lo faremo nella riga di comando ESXi, ma è anche possibile utilizzare VMware vSphere Client o VMware Host Client.
Ridimensionamento di un disco virtuale nella riga di comando ESXi
In primo luogo, abilitare la shell ESXi e la console Bash nell’interfaccia utente della console diretta (DCUI) di ESXi o in VMware Host Client. Quindi connettersi a Shell ESXi tramite SSH o aprendo direttamente la shell ESXi su un host ESXi.
- Vai alla directory in cui si trova l’ubicazione del disco virtuale necessario della tua VM:
cd /vmfs/volumes/datastore2/Ubuntu19/ - Controlla il contenuto della directory e la dimensione dei file:
ls -al
Abbiamo un thin provisioning disco virtuale Ubuntu19.vmdk la cui dimensione massima è di 20 GB e la dimensione attuale del disco virtuale è di circa 5,6 GB (la dimensione totale dei file memorizzati su un disco virtuale). La dimensione del file viene visualizzata in byte nella riga di comando.
- Eseguire il comando per espandere il disco virtuale da 20 GB a 30 GB. Immettere la dimensione desiderata della destinazione del disco virtuale, non la dimensione dell’incremento che si desidera aggiungere al disco virtuale. Nel nostro esempio, aumentiamo la dimensione del nostro disco virtuale da 10 GB a 30 GB utilizzando il comando riportato di seguito:
vmkfstools -X 30G Ubuntu19.vmdkSeleziona un vmdk file su disco, non -flat.vmdk. Immettere la dimensione del disco e il file del disco virtuale necessari in base alle proprie esigenze e alla propria configurazione. G indica gigabyte, M indica megabyte, K indica kilobyte, T indica terabyte, ecc. Se si desidera avere un disco thick azzerato dopo averne aumentato le dimensioni, utilizzare un comando come questo:
vmkfstools -X 30G -d eagerzeroedthick vm-disk-name.vmdk. - Crescita completata al 100% – questo output indica che il disco virtuale è stato espanso correttamente. Controllare le nuove dimensioni del disco virtuale:
ls -alCome puoi vedere nell’output, la dimensione del disco virtuale è stata aumentata.

Estendere una partizione Linux con l’utilità Disks
Le nuove versioni di Ubuntu hanno un Dischi utilità con un’interfaccia grafica utente (GUI) intuitiva, che consente di modificare le dimensioni delle partizioni del disco con pochi clic:
- Accendi la VM dopo aver esteso il disco virtuale e avvia Ubuntu Linux installato sulla VM.
- Clicca Trattino > Utilità > Dischi, oppure digitare Dischi nel menu Dash. Scegli l’elemento appropriato una volta che il Dischi L’icona dell’utilità viene trovata e visualizzata.
Dopo aver ridimensionato un disco virtuale, le partizioni Linux non vengono estese automaticamente e sullo spazio libero (non partizionato) del disco. Nel nostro esempio, abbiamo installato Ubuntu utilizzando lo schema di partizionamento predefinito, in cui abbiamo un unico grande / Partizione (root) su un disco.

- Espandiamo il / partizione (root) sul disco virtuale su cui è installato Ubuntu direttamente da questa istanza installata di Ubuntu nel Dischi utilità. Selezionare la prima partizione montata su / directory in Linux, clicca sul icona delle impostazionie nel menu contestuale, fare clic su Ridimensiona.
Se disponi di più partizioni, puoi modificare le dimensioni di tali partizioni nel Dischi utilità.

- Nel Ridimensiona volume finestra, inserisci i nuovi parametri, come la dimensione della partizione, lo spazio libero successivo o la differenza. In alternativa, sposta il cursore dalla dimensione attuale a quella desiderata. Quindi fai clic su Ridimensiona pulsante.

- Inserisci la password per modificare le impostazioni delle partizioni e cambiare le dimensioni delle partizioni del disco.
Ora la partizione è estesa sul disco virtuale la cui dimensione è stata aumentata.

Se utilizzi una versione di Linux diversa da Ubuntu e la tua versione di Linux non dispone del Dischi utilità per regolare le dimensioni delle partizioni del disco, utilizzare separato disponibile su tutte le distribuzioni Linux.
Utilizzo di parted per estendere le partizioni Linux
Separati è un’utilità da riga di comando per gestire le partizioni del disco in Linux. Separati è preinstallato in Ubuntu. Tuttavia, se questa utility non è installata sul tuo Linux, installala manualmente dai repository software (con i permessi di root).
- Sui sistemi Debian e Ubuntu:
sudo apt-get install parted - Su RHEL (Red Hat Enterprise Linux), CentOS e Fedora:
yum install parted - Sulle versioni Fedora 22+:
dnf install parted - Su OpenSUSE:
zypper install parted
Smontaggio delle partizioni
Per regolare la dimensione delle partizioni del disco in Linux, procedere come segue:
- Smontare le partizioni prima di eseguire operazioni con le partizioni in Separati. Le operazioni con partizioni non montate possono danneggiare i dati sul disco. Utilizzare il comando umount comando per smontare una partizione, ad esempio:
umount /dev/sdb1 - Verifica se una partizione è montata con uno di questi comandi:
mountdf -hcat /proc/mounts
Preparazione all’estensione di una partizione di sistema
Se è necessario ridimensionare una partizione di sistema utilizzata dal sistema operativo installato, avviare il sistema da un CD/DVD/chiavetta USB live, poiché non è possibile smontare la partizione utilizzata dal sistema operativo. A tale scopo è possibile utilizzare il supporto di installazione di Ubuntu. Questo flusso di lavoro si applica alle VM su Host VMware ESXi e alle macchine con VMware Workstation.
- Seleziona il file ISO del supporto di installazione di Ubuntu nella configurazione di un’unità CD/DVD virtuale della VM.
- Nella schermata seguente, sono riportate le impostazioni della VM con la configurazione dell’unità CD/DVD di una VM in VMware vSphere Client.

- Avvia la VM.
- Clicca sullo schermo VM e premi F2 una volta accesa la VM, per accedere al BIOS virtuale della VM. Fallo rapidamente perché hai solo un secondo circa per premere F2.
NOTA: Quando si seleziona il disco di installazione, il CD/DVD ROM virtuale viene selezionato come primo dispositivo di avvio all’interno della VM. Quando termina l’installazione del sistema operativo guest, l’unità disco rigido virtuale su cui è installato il sistema operativo guest viene automaticamente impostata come primo dispositivo di avvio della VM. Se si desidera avviare il sistema da un’unità CD/DVD virtuale, selezionare il primo dispositivo di avvio appropriato nelle impostazioni BIOS della VM.

- Seleziona il Avvio scheda nel BIOS. Selezionare un dispositivo di avvio e premere + e – per modificare l’ordine dei dispositivi di avvio. Selezionare l’unità CD/DVD di una VM come primo dispositivo di avvio. Salvare le modifiche e uscire (andare su Esci scheda).

- Avvia il sistema dal supporto di installazione live di Ubuntu e seleziona l’opzione Prova Ubuntu opzione.
Modifica delle dimensioni delle partizioni del disco
Tieni presente che una volta eseguito un comando in Separati, le modifiche vengono immediatamente salvate sul disco. Quando si eseguono comandi per apportare modifiche alle partizioni del disco, vengono visualizzate domande di conferma.
- Apri il terminale ed esegui Separati con permessi di root:
sudo parted - /dev/sda è il disco che si apre per impostazione predefinita. Poiché la nostra VM Ubuntu ha un solo disco virtuale, aprendo /dev/sda è l’opzione giusta.
- Per selezionare un altro disco, ad esempio /dev/sdb, usa il comando:
select /dev/sdbIn questo modo, è possibile selezionare /dev/sdb per operazioni con partizioni su quell’unità. Utilizziamo /dev/sda in questo esempio.
- Elenca tutte le partizioni Linux esistenti sul disco selezionato.
printRicordare il numero della partizione necessaria (1 nel nostro caso).

- È possibile elencare tutte le partizioni su tutti i dischi collegati:
print all - Controlla lo spazio libero (non partizionato) sul disco selezionato:
print freeIl nostro spazio su disco inutilizzato è compreso tra 21,5 GB e 32,2 GB perché abbiamo aumentato la dimensione del disco, ma la partizione del disco non è stata aumentata automaticamente.

Risolviamo questa situazione ed estendiamo la partizione del disco esistente.
- Inserisci il comando in separato per ridimensionare la partizione:
resizepart - Inserisci il numero della partizione necessaria di cui desideri aumentare la dimensione. La mia partizione su /dev/sda ha il numero 1 in questo esempio.
Numero di partizione? 1
- Immettere la dimensione finale della partizione (nel nostro caso, la partizione inizia alle 1049 KB e deve terminare a 32,2 GB). Se non si immettono unità, viene utilizzato come impostazione predefinita il megabyte.
Fine? 32,2 GB
- Avvertenza: il ridimensionamento di una partizione può causare la perdita di dati. Sei sicuro di voler continuare?
Sì/No? y
Le modifiche dovrebbero ora essere scritte sul disco.
- Verifica che le modifiche siano state scritte sul disco.
print
La dimensione della partizione è stata aumentata con successo.
Utilizzo di GParted su Live CD
GParted è un’edizione alternativa di separato con l’interfaccia grafica. Questa utility è gratuita, proprio come separato. Se si avvia da un Live CD con GParted, è possibile ridimensionare le partizioni su diverse distribuzioni Linux, comprese quelle prive di un’utilità di partizionamento del disco che ridimensiona le partizioni al volo. È inoltre possibile ridimensionare le partizioni su cui è installato Linux quando non è possibile ridimensionarle dal sistema operativo perché quest’ultimo le monta e le utilizza per il normale funzionamento.
- Scarica l’immagine ISO avviabile dal sito web ufficiale.
- Inserisci l’immagine ISO avviabile di GParted in un’unità CD/DVD virtuale di una VM di cui stai ridimensionando il disco.
- Avvia il sistema da questa immagine ISO (abbiamo spiegato come avviare il sistema da un’immagine ISO nella sezione precedente).
- Nel menu di avvio, selezionare GParted Live (Impostazioni predefinite)e premere Inserisci.

Quindi devi selezionare alcune opzioni.
- Configurazione dei dati della console
È possibile lasciare il valore predefinito (Non toccare la mappa dei tasti), e premi OK continuare.
- Quale lingua preferisci?
Seleziona la tua lingua. Seleziono 33 (inglese americano). Premere Inserisci per mantenere il valore predefinito e continuare, oppure digitare il numero dell’opzione desiderata, quindi premere Inserisci.
- Quale modalità preferisci?
Seleziona 0 (Continua ad avviare X per utilizzare GParted automaticamente).

- Ora vedete l’interfaccia grafica di GParted. L’interfaccia di GParted è facile da usare. Seleziona il disco desiderato nell’angolo in alto a destra (/dev/sda nel nostro caso). Le partizioni del disco selezionato vengono visualizzate con le relative informazioni.

- Seleziona la partizione necessaria, clicca Partizione > Ridimensiona/Sposta (oppure clicca con il tasto destro sulla partizione desiderata per aprire questo menu). La partizione che vogliamo ridimensionare (espandere) è /dev/sda1Abbiamo 10 GB di spazio su disco non allocato dopo aver aumentato la dimensione del disco virtuale da 20 GB a 30 GB.

- Nella finestra aperta, inserisci una nuova dimensione del disco in megabyte oppure utilizza il mouse per regolare la dimensione della partizione del disco. Fai clic su Ridimensiona/Sposta dopo aver impostato le impostazioni della nuova configurazione corretta.

- Clicca Modifica > Applica tutte le operazioni Applica le modifiche. In GParted le modifiche non vengono scritte immediatamente sul disco. È necessario applicare le modifiche alla configurazione per scriverle.

- Ora la dimensione della partizione è aumentata alla dimensione massima possibile sul disco virtuale espanso della VM VMware. Spegnere la VM, espellere l’immagine ISO con GParted, avvia la tua VM e effettua l’avvio del sistema dal disco rigido virtuale che hai espanso e che contiene la partizione di cui è stata aumentata la dimensione.
- È possibile verificare le dimensioni delle partizioni dopo l’avvio di Linux con il comando df -h comando. Nella schermata seguente, vedere il /dev/sda1 dimensione della partizione prima e dopo il ridimensionamento.

Utilizzo di LVM
Se il tuo Linux installato su una VM utilizza LVM per gestire i volumi del disco, hai almeno due opzioni per la gestione del disco se desideri aumentare la dimensione di un disco virtuale:
- Aumentare le dimensioni di un disco virtuale esistente. Creare una nuova partizione (il tipo di partizione deve essere Linux LVM con ID 8e) su un disco esteso, aggiungere questa partizione a un gruppo di volumi esistente ed estendere il volume logico con la nuova partizione. Se si utilizza MBR, il numero massimo di partizioni primarie è quattro.
- Aggiungere un nuovo disco virtuale, creare una partizione sul nuovo disco virtuale, aggiungere questa partizione a un gruppo di volumi esistente ed espandere il gruppo di volumi utilizzando una nuova partizione LVM su un nuovo disco virtuale.
Utilizzo di VMware vCenter Converter
Un altro modo per estendere le partizioni e regolare le dimensioni delle partizioni del disco sulle VM VMware con Linux installato come sistema operativo guest è utilizzare VMware vCenter Converter Standalone, che è uno strumento gratuito. Ci sono alcuni prerequisiti:
- Il convertitore deve essere installato su un computer Windows.
- Deve esserci una connessione di rete tra i componenti del convertitore, la VM Linux e l’host ESXi o vCenter Server.
- L’accesso SSH deve essere configurato su una VM Linux.
Eseguire i seguenti passaggi per estendere le partizioni su una VM Linux con VMware Converter:
- Avvia VMware Converter Standalone su un computer Windows e clicca Convertitore automaticoÈ possibile utilizzare qualsiasi macchina collegata alla VM Linux di origine e un host ESXi dove deve essere collocata la VM.

- Nel Sistema di origine passaggio della procedura guidata, selezionare Acceso come tipo di origine e selezionare Macchina Linux remota nel menu a tendina. Quando si utilizza un convertitore VMware per estendere le partizioni su una VM Linux, il convertitore si connette al sistema operativo guest di questa VM, in modo simile a quando ci si connette a qualsiasi altra macchina Linux fisica.
- Inserisci il nome utente e la password utilizzati sul computer Linux. Questo utente deve disporre delle autorizzazioni per l’accesso remoto al computer Linux tramite SSH e utilizzare sudo su quella macchina Linux. È possibile visualizzare i dettagli del codice sorgente e premere Avanti continuare.
A volte possono verificarsi errori durante la connessione a una macchina Linux remota in un convertitore VMware. Nella sezione seguente sono riportati gli errori più comuni e le relative soluzioni.

- Selezionare il sistema di destinazione che può essere lo stesso host ESXi in cui si trova la VM Linux di origine. In alternativa, è possibile selezionare un altro host ESXi per archiviare una VM con dischi virtuali e partizioni estesi dopo la conversione. Immettere l’indirizzo IP o il nome host di un host ESXi e le relative credenziali di root. È anche possibile utilizzare le credenziali amministrative di vCenter.

- Inserisci un nome per la VM di destinazione, ad esempio Linux03. Nella sezione sottostante è possibile visualizzare le VM residenti sull’host ESXi selezionato.

- Selezionare l’ubicazione di destinazione per la VM convertita. Selezionare un host ESXi, selezionare un archivio dati collegato a questo host e definire la versione hardware della VM.

- Configurare le opzioni e impostare i parametri per l’attività di conversione. Fare clic su Modifica nel Dati da copiare Sezione. Questa sezione contiene le impostazioni per regolare la dimensione della partizione del disco.

- Assicurati che Selezionare i volumi da copiare è selezionato nel menu a tendina. Di seguito è possibile visualizzare i dischi virtuali e le partizioni della VM corrente con le loro dimensioni attuali. Fare clic su Avanzato per aprire la finestra di modifica delle dimensioni della partizione del disco.

- Seleziona il Layout della destinazione scheda una volta selezionata la vista Avanzata. Selezionare il tipo di disco virtuale con provisioning sottile o spesso.

- Clicca sul menu a tendina della partizione desiderata e clicca su
. Immettere la nuova dimensione della partizione. La dimensione del disco virtuale verrà aumentata automaticamente dopo aver esteso le partizioni. 
- Clicca Modifica nel Avanzato opzioni e deselezionare il Casella di controllo “Riconfigura VM di destinazione”. Poiché convertiamo Linux già installato su una VM VMware, non è necessario riconfigurare la VM. È necessario riconfigurare una VM quando si converte una macchina Linux fisica in una VM per regolare le impostazioni di sistema per i dispositivi virtuali della VM convertita.

- Leggi il riepilogo e controlla i parametri di conversione. Clicca Termina per avviare il processo di conversione.

- Attendere fino a quando il processo di conversione della VM termina.
- Avvia una VM convertita e verifica che la modifica delle dimensioni della partizione del disco sia stata eseguita correttamente. Se il risultato è positivo, riconfigura le impostazioni di sicurezza SSH e sudo riportandole allo stato precedente alla conversione. È possibile eliminare la VM di origine.
Errori comuni durante l’utilizzo di VMware vCenter Converter
A volte possono verificarsi errori durante la connessione a una macchina Linux remota in un convertitore VMware.
Errore 1
Impossibile eseguire la query sulla macchina sorgente Linux live. Assicurarsi di poter eseguire sudo senza inserire una password quando si accede alla macchina sorgente tramite SSH come “user1”..Soluzione:
- Modifica la configurazione di sudo nel file /etc/sudoers file:
sudo vim /etc/sudoersoppure
visudo - Aggiungi la seguente riga per consentire utente1 per utilizzare sudo senza inserire una password. Utilizza il tuo nome utente invece di utente1.
utente1 TUTTI=(TUTTI) NOPASSWD:TUTTI
- Salva le modifiche al file.
Errore 2
Errore di autenticazione. Nome utente, password o chiave privata client non corretti. Questa operazione è obbligatoria e richiede che la configurazione del demone SSH della macchina di origine consenta l’accesso root remoto..Soluzione:
- Per risolvere questo problema, modifica il file di configurazione del server SSH e consenti l’accesso come root tramite SSH. Utilizza vim o un altro editor di testo.
sudo vim /etc/ssh/sshd_config - Modifica (aggiungi o rimuovi il commento) il PermitRootLogin linea e set sì:
PermettereRootLogin sì
- Salva le modifiche al file (premi Esc, tipo :wq e premi Inserisci in vim) e uscire.
- Riavvia il demone sshd (servizio):
sudo service sshd restart
Non dimenticare di ripristinare le modifiche apportate a questi file di configurazione (/etc/ssh/sshd_config e /etc/sudoers) dopo aver terminato la conversione e l’espansione delle partizioni sulla VM Linux per motivi di sicurezza.Gli errori sopra descritti potrebbero verificarsi per i seguenti motivi:
Motivo 1
Le directory vengono montate più volte come punti di montaggio.Soluzione:Le directory montate più volte possono causare problemi. Per risolvere questo problema, smontare i punti di montaggio ridondanti.
Motivo 2
Questo problema può verificarsi se durante l’installazione di Linux è stato utilizzato il layout di partizione predefinito.Soluzione:Prova a utilizzare il partizionamento manuale durante l’installazione di Linux se prevedi di utilizzare VMware Converter per quella macchina Linux.
Motivo 3
Configurazione errata di VMware vCenter Converter.Soluzione:
- Controlla i file di configurazione xml di VMware Converter installato sul tuo computer Windows:
%ALLUSERSPROFILE%Dati applicativiVMwareVMware vCenter Converter Standalone
- Se hai modificato i file xml dell’agente, del server o del worker, riavvia i servizi appropriati in Windows per attivare le modifiche alla configurazione.

Conclusione
È possibile utilizzare separato nella maggior parte delle distribuzioni Linux, il Dischi L’utilità è disponibile nelle moderne distribuzioni Ubuntu. Se è necessario estendere le partizioni utilizzate dal sistema operativo Linux installato, effettuare l’avvio dal Live CD con GParted, che è lo strumento universale per modificare le dimensioni delle partizioni del disco. VMware vCenter Converter può essere utile anche in alcuni casi per le VM Linux.Prima di eseguire operazioni con i dischi virtuali delle VM e le partizioni del disco, si consiglia di eseguire il backup di queste VM per evitare la perdita di dati. NAKIVO Backup & Replication è una soluzione universale per la protezione dei dati che supporta il backup delle macchine virtuali VMware vSphere.