Come risolvere l'errore della procedura guidata Nuovo datastore quando la tabella delle partizioni del disco è danneggiata o non riconosciuta
Obiettivo: risolvere l'errore Either the selected disk already has a VMFS datastore or the host cannot perform a partition table conversion. Select another disk. che blocca la creazione di un nuovo datastore VMFS su un disco locale o su una LUN appena presentata all'host ESXi.
Nella maggior parte dei casi il disco contiene una tabella delle partizioni danneggiata o non riconosciuta, residuo di un utilizzo precedente. La soluzione consiste nello scrivere una nuova tabella vuota con partedUtil dalla shell dell'host, dopodiché la procedura guidata funziona normalmente. Si tratta di un'operazione distruttiva: leggi con attenzione la sezione 3 prima di procedere.
ℹ️ Convenzioni usate nella guida
Nei comandi l'identificativo del disco è indicato con il segnaposto (un valore come naa.xxxxxxxxxxxxxxxx): sostituiscilo con quello del tuo disco, individuato come descritto in sezione 4. Gli screenshot non contengono dati sensibili.
Indice
- 1. Il sintomo
- 2. La causa
- 3. Prerequisiti: accesso alla shell dell'host
- 4. Individuare il disco
- 5. Verificare la tabella delle partizioni
- 6. Scrivere una nuova tabella delle partizioni
- 7. Creare il datastore
- 8. Riepilogo e risoluzione dei problemi
1. Il sintomo
Dalla procedura guidata New Datastore (vSphere Client: tasto destro sull'host, Storage > New Datastore) si sceglie il tipo VMFS, si assegna il nome, si seleziona il disco e la versione VMFS. Al passo 4 Partition configuration, però, il menu Partition Configuration resta vuoto () e non è possibile proseguire:

In alto compare l'avviso Select partition configuration to continue e in basso il messaggio:
- Either the selected disk already has a VMFS datastore or the host cannot perform a partition table conversion. Select another disk.
Se il disco non contiene già un datastore VMFS (in quel caso non andrebbe usato), il problema è la seconda parte del messaggio: ESXi non riesce a leggere la tabella delle partizioni del disco e quindi non può convertirla nel formato GPT che usa per i datastore VMFS.
2. La causa
Per creare un datastore ESXi deve leggere la tabella delle partizioni esistente (MBR/msdos o GPT) e, se necessario, convertirla in GPT. Se la tabella è illeggibile la procedura guidata non propone alcuna configurazione. Capita tipicamente quando:
- il disco è stato usato in precedenza su un altro sistema (Windows, Linux, NAS, altro array) e ne conserva i residui;
- il volume logico del controller RAID (es. HPE Smart Array, Dell PERC) è stato eliminato e ricreato con una dimensione diversa: la copia di riserva della tabella GPT, che si trova alla fine del disco, non è più dove ESXi se la aspetta;
- la tabella delle partizioni è stata danneggiata da una scrittura interrotta o da un guasto.
In tutti questi casi, se i dati presenti sul disco non servono, basta sostituire la tabella danneggiata con una nuova tabella vuota.
3. Prerequisiti: accesso alla shell dell'host
- Credenziali di root dell'host ESXi.
- Servizio SSH (o ESXi Shell) attivo. Dall'ESXi Host Client: Gestisci > Servizi, seleziona TSM-SSH e scegli Avvia. In alternativa, dalla console diretta (DCUI): Troubleshooting Options > Enable SSH.
- Un client SSH (es. PuTTY o il terminale di Windows) per collegarsi all'indirizzo di gestione dell'host.
ssh root@⚠️ Operazione distruttiva
Il comando della sezione 6 sovrascrive la tabella delle partizioni: tutte le partizioni e i dati presenti sul disco diventano inaccessibili. Verifica due volte di aver individuato il disco corretto (sezione 4) e non eseguirlo mai su un disco che ospita un datastore o dati da conservare. Al termine ricordati di disattivare SSH (sezione 7).
4. Individuare il disco
Elenca i dispositivi di archiviazione visti dall'host, con identificativo, nome visualizzato e dimensione:
esxcfg-scsidevs -cIndividua il disco da usare per il nuovo datastore confrontando dimensione e nome visualizzato (lo stesso che compare nella procedura guidata al passo Name and device selection). L'identificativo da usare nei comandi è quello che inizia con naa. (o t10., mpx. per alcuni dischi locali). Puoi ottenere i dettagli di un singolo dispositivo con:
esxcli storage core device list -d Poi verifica che il disco non ospiti già un datastore. Il comando seguente elenca, per ogni datastore VMFS, il dispositivo su cui si trova:
esxcli storage vmfs extent list⚠️ Il disco non deve comparire nell'elenco
Se l'identificativo del disco compare nella colonna Device Name di esxcli storage vmfs extent list, il disco contiene già un datastore montato: l'errore è dovuto a questo e non devi proseguire con la procedura. Scegli un altro disco oppure, se il datastore non serve più, eliminalo prima dal client vSphere.
5. Verificare la tabella delle partizioni
Leggi la tabella delle partizioni del disco con partedUtil:
partedUtil get /vmfs/devices/disks/Se la tabella è danneggiata il comando non restituisce la geometria del disco e l'elenco delle partizioni, ma un errore simile a questo:
Error: Both the primary and backup GPT tables are corrupt. Try making a fresh table, and using Parted's rescue feature to recover partitions.
Unable to read partition table for device /vmfs/devices/disks/Il messaggio conferma la causa: sia la tabella GPT principale (all'inizio del disco) sia la copia di riserva (alla fine) sono danneggiate, quindi ESXi non ha nulla da convertire.
💡 Se il disco contiene partizioni valide
Se invece partedUtil get restituisce la geometria e un elenco di partizioni, il disco è leggibile ma contiene partizioni di un altro sistema. Con partedUtil getptbl vedi anche il tipo di tabella (msdos o gpt) e il tipo di ogni partizione. Se i dati non servono puoi procedere comunque con la sezione 6, che rimuove tutte le partizioni.
6. Scrivere una nuova tabella delle partizioni
Scrivi sul disco una nuova tabella delle partizioni vuota di tipo msdos (MBR):
partedUtil setptbl /vmfs/devices/disks/ msdosIl comando risponde con il tipo di tabella creata seguito da una riga senza partizioni:
msdos
0 0 0 0La vecchia tabella GPT danneggiata è stata sostituita: ora il disco ha una tabella valida e vuota, che la procedura guidata è in grado di convertire in GPT durante la creazione del datastore. Puoi verificarlo rieseguendo partedUtil get, che questa volta deve restituire la geometria del disco senza errori.
💡 In alternativa: tabella GPT vuota
Si può anche creare direttamente una tabella GPT vuota con partedUtil mklabel /vmfs/devices/disks/. Il risultato è equivalente: in entrambi i casi la procedura guidata trova un disco leggibile e senza partizioni.
7. Creare il datastore
Torna al client vSphere (o all'Host Client) e ripeti la procedura guidata New Datastore. Se la finestra era rimasta aperta, chiudila con Cancel e riaprila, così il disco viene letto di nuovo. Al passo 4 Partition configuration ora è disponibile l'opzione Use all available partitions e lo schema mostra l'intero disco come spazio libero (Empty):

- in Partition Configuration lascia Use all available partitions;
- in Datastore Size imposta la dimensione (di norma tutto lo spazio disponibile) e lascia Block size e Space Reclamation ai valori predefiniti;
- fai clic su Next, controlla il riepilogo al passo Ready to complete e conferma con Finish.
Il nuovo datastore compare in Storage > Datastores (Host Client: Archiviazione > Datastore). Da riga di comando puoi verificarlo con:
esxcli storage filesystem listInfine disattiva SSH se non ti serve più (Host Client: Gestisci > Servizi > TSM-SSH > Arresta).
8. Riepilogo e risoluzione dei problemi
| Comando | A cosa serve | Sezione |
|---|---|---|
esxcfg-scsidevs -c | Elenca i dispositivi con identificativo, nome e dimensione | Vai |
esxcli storage vmfs extent list | Mostra su quali dispositivi si trovano i datastore VMFS | Vai |
partedUtil get /vmfs/devices/disks/ | Legge geometria e partizioni del disco | Vai |
partedUtil getptbl /vmfs/devices/disks/ | Mostra anche il tipo di tabella delle partizioni | Vai |
partedUtil setptbl /vmfs/devices/disks/ | Scrive una nuova tabella delle partizioni vuota | Vai |
partedUtil mklabel /vmfs/devices/disks/ | Alternativa: crea una tabella GPT vuota | Vai |
esxcli storage filesystem list | Verifica dei datastore montati | Vai |
Problemi frequenti
| Situazione | Causa probabile | Cosa fare |
|---|---|---|
L'errore compare ancora dopo setptbl | La procedura guidata usa ancora i dati letti in precedenza | Chiudi e riapri la procedura guidata; se non basta esegui esxcli storage core adapter rescan --all |
Il disco compare in esxcli storage vmfs extent list | Il disco ospita già un datastore | Non procedere: scegli un altro disco o elimina prima il datastore se non serve più (sezione 4) |
setptbl restituisce un errore di scrittura | Il disco è in uso (datastore montato, partizione di coredump o di scratch) | Verifica con esxcli storage vmfs extent list e esxcli system coredump partition list che il disco non sia usato dall'host |
| Il disco non compare nella procedura guidata | Il disco non è visto dall'host | Esegui il rescan dello storage e controlla con esxcfg-scsidevs -c (sezione 4) |
| Errore Cannot change the host configuration | Problema diverso, non legato alla tabella delle partizioni | Vedi la guida ESXi – Errore nella creazione datastore “Cannot change host config” |




