VMware ESXi po namestitvi ne vidi diska
Po namestitvi ESXi se disk včasih ne pojavi pri ustvarjanju datastora ali pa ESXi na njem najde star datastore, vendar ga ne priklopi. Vzrok določa rešitev: nekateri postopki ohranijo podatke na disku, drugi jih izbrišejo. Ta vodnik pojasnjuje, kako najprej ugotoviti vzrok in nato izbrati ustrezen scenarij.
Ukazi veljajo za ESXi 8.0 in delujejo tudi v ESXi 7.0. Izvedite jih v ESXi Shell ali prek SSH kot uporabnik root.
Splošna podpora za ESXi 7.0 se je končala 2. oktobra 2025 in ta različica ne prejema več varnostnih popravkov. Če strežnik še vedno uporablja ESXi 7.0, načrtujte nadgradnjo na podprto različico.
Ugotavljanje vzroka
V brskalniku odprite ESXi Host Client in pojdite na Storage → Devices. Poiščite disk in preverite, kaj vidite.
- Disk je na seznamu v Storage → Devices, vendar ni na voljo v čarovniku New datastore. Preden karkoli spremenite, preverite, ali vsebuje obstoječi datastore, sistemske particije ali druge particije. Glejte scenarija 1 in 2.
- ESXi na disku javlja star datastore VMFS, ki pa ni priklopljen. Disk je bil najverjetneje uporabljen v drugi namestitvi ESXi ali pa je bil kloniran. Pojdite na scenarij 1.
- Diska na seznamu sploh ni. ESXi same naprave ne vidi. Pojdite na scenarij 3.
Isti pregled iz ukazne vrstice. Izpišite diske, ki jih vidi ESXi:
esxcli storage core device list | grep -E "^[a-z]|Display Name|Size"
Izpišite nosilce VMFS, ki jih je ESXi našel, vendar jih ni priklopil:
esxcli storage vmfs snapshot list
Če drugi ukaz ne prikaže nobenega nosilca, lahko disk še vedno vsebuje navaden datastore VMFS, ki je bil odklopljen ročno. ESXi takega datastora ne priklopi samodejno, vendar tudi ni snapshot. Preverite seznam datotečnih sistemov:
esxcli storage filesystem list
Če je datastore na seznamu z vrednostjo Mounted, nastavljeno na false, ga priklopite po imenu:
esxcli storage filesystem mount -l DATASTORE_NAME
Ali po UUID:
esxcli storage filesystem mount -u DATASTORE_UUID
Če drugi ukaz prikaže nosilec, uporabite scenarij 1. Če noben od ukazov ne prikaže datastora, to še ne pomeni, da so na disku samo stare particije: disk je lahko zagonski (glejte scenarij 4) ali vsebuje podatke, ki jih potrebujete. Preden karkoli izbrišete, preverite particije, kot je opisano v scenariju 2.
Scenarij 1. Priklop obstoječega datastora VMFS z ohranitvijo podatkov
Ta scenarij uporabite, kadar disk vsebuje datastore z navideznimi stroji, ki jih potrebujete. To se zgodi po ponovni namestitvi ESXi na istem strežniku, ko disk prestavite z drugega gostitelja ali ko je disk kopija drugega diska.
Vsak nosilec VMFS ima podpis, ki je povezan z identifikatorjem naprave, na kateri je bil ustvarjen. Če se identifikator naprave spremeni, na primer po kloniranju diska, prestavitvi na drug krmilnik ali predstavitvi z drugim ID-jem LUN, ESXi zazna nosilec kot nerešen snapshot (unresolved snapshot) in ga ne priklopi samodejno. To preprečuje priklop dveh kopij istega datastora. Vsak nepriklopljen datastore ni snapshot: če spodnji ukaz ne prikaže ničesar, je vzrok drug.
Preverite nosilec:
esxcli storage vmfs snapshot list
Primer izpisa:
5f5b217c-2b53d2b8-d1a4-ac1f6be04cea Volume Name: datastore1 VMFS UUID: 5f5b217c-2b53d2b8-d1a4-ac1f6be04cea Can mount: true Reason for un-mountability: Can resignature: true Reason for non-resignaturability: Unresolved Extent Count: 1
Obstoječi podpis lahko obdržite (mount) ali zapišete novega (resignature).
Priklop nosilca z obstoječim podpisom
Ta način uporabite, kadar izvirni datastore ni več povezan s tem gostiteljem, na primer po ponovni namestitvi ESXi:
esxcli storage vmfs snapshot mount -l datastore1
Zamenjajte datastore1 z vrednostjo Volume Name iz izpisa. Če ima več nosilcev isto ime, namesto tega uporabite UUID: -u 5f5b217c-2b53d2b8-d1a4-ac1f6be04cea. Enako velja za resignature. Priklop se ohrani tudi po ponovnem zagonu. Če želite nosilec priklopiti samo do naslednjega ponovnega zagona, dodajte -n.
Način izberite glede na to, ali je izvirni nosilec še vedno povezan. Če je na gostitelju priklopljen izvirni datastore z istim UUID, kopije ni mogoče priklopiti z obstoječim podpisom. V tem primeru uporabite resignature.
Resignature nosilca
Ta način uporabite, kadar morata izvirni datastore in njegova kopija delovati na istem gostitelju hkrati:
esxcli storage vmfs snapshot resignature -l datastore1
ESXi zapiše nov UUID, datastore pa se pojavi z imenom, kot je snap-1a2b3c4d-datastore1. Preimenujete ga lahko v Host Client.
Po resignature navidezni stroji na tem datastoru niso registrirani na gostitelju. Datastore odprite v Storage → Datastore browser, poiščite datoteko .vmx vsakega navideznega stroja in ga registrirajte. Iz ukazne vrstice navidezni stroj registrirate z ukazom:
vim-cmd solo/registervm /vmfs/volumes/DATASTORE/VM/VM.vmx
Zamenjajte DATASTORE in VM z imenom datastora in mapo navideznega stroja. Resignature ni mogoče razveljaviti.
Preverjanje rezultata
esxcli storage filesystem list
Datastore mora biti na seznamu z vrednostjo Mounted, nastavljeno na true. Prikazan je tudi v Storage → Datastores v Host Client.
Starejša ukaza esxcfg-volume -l (izpis seznama) in esxcfg-volume -M <UUID> (trajni priklop) opravita isto nalogo in še vedno delujeta v ESXi 7.0 in 8.0. Ukaz vicfg-volume spada v vSphere CLI, ki ni več podprt.
Scenarij 2. Brisanje starih particij in uporaba diska kot novega
Ta scenarij uporabite samo, kadar disk ne vsebuje podatkov, ki jih potrebujete. Tipični primeri: disk je uporabljal drug operacijski sistem, strojni RAID ali stara namestitev ESXi, ki je ne potrebujete več. ESXi takega diska ne ponudi za nov datastore, dokler so na njem stare particije.
Brisanje particijske tabele izbriše vse podatke na disku. Dvakrat preverite identifikator diska in se prepričajte, da to ni disk, s katerega se zažene ESXi, in ne disk z datastorom, ki ga potrebujete.
V Host Client
Pojdite na Storage → Devices in kliknite disk. Kliknite Actions in izberite Clear partition table. Potrdite dejanje.
Nato pojdite na Storage → Datastores, kliknite New datastore in na disku ustvarite datastore VMFS.
Če želite odstraniti samo eno particijo, izberite Edit partitions, izbrišite particijo in shranite spremembe.
Iz ukazne vrstice
Poiščite ime naprave diska:
ls /vmfs/devices/disks/ | grep -v ":"
Prepričajte se, da to ni zagonski disk in da na njem ni nobenega datastora. DEVICE zamenjajte z imenom iz prejšnjega ukaza:
esxcli storage core device list -d DEVICE | grep -E "Display Name|Is Boot Device" esxcli storage vmfs extent list
Is Boot Device mora biti false, naprava pa se ne sme pojaviti v izpisu ukaza esxcli storage vmfs extent list. Prepričajte se tudi, da se disk ne uporablja za izpis pomnilnika ob zrušitvi (crash dump) ali za sistemske dnevnike:
esxcli system coredump partition list esxcli system syslog config get
Naprava se ne sme pojaviti v izpisu coredump, imenik syslog pa ne sme biti na datastoru tega diska. Če niste prepričani, za kaj se disk uporablja, ne izvajajte destruktivnega ukaza. Nato prikažite particije diska:
partedUtil getptbl /vmfs/devices/disks/DEVICE
Zapišite novo prazno particijsko tabelo GPT:
partedUtil mklabel /vmfs/devices/disks/DEVICE gpt
Ponovno preglejte adapterje, da Host Client zazna prazen disk:
esxcli storage core adapter rescan --all
Nato ustvarite datastore v Host Client, kot je opisano zgoraj.
Scenarij 3. Diska sploh ni videti
Če diska ni v Storage → Devices, ESXi same naprave ne vidi. Particije in datastori tu niso pomembni: težava je v strojni opremi, načinu delovanja krmilnika ali gonilniku.
Preverite pomnilniške adapterje in njihove gonilnike:
esxcli storage core adapter list
Nato ponovno preglejte adapterje:
esxcli storage core adapter rescan --all
Znova preverite seznam naprav:
esxcli storage core device list
Če diska še vedno ni, preverite spodnje vzroke.
Pogosti vzroki:
- disk je priključen na krmilnik RAID in v nastavitvah krmilnika ni dodan nobenemu navideznemu disku (logičnemu pogonu);
- krmilnik deluje v načinu, ki ga ESXi ne podpira, na primer v programskem RAID-u matične plošče;
- za krmilnik ali pogon NVMe ni gonilnika za ESXi. ESXi 7.0 in novejši ne podpirajo več starih gonilnikov vmklinux, zato lahko strojna oprema, ki je delovala z ESXi 6.x, preneha delovati;
- disk je onemogočen v nastavitvah BIOS/UEFI, okvarjen ali ni priključen.
Model krmilnika in diska preverite v Broadcom Compatibility Guide. Pri krmilniku RAID med zagonom odprite njegovo konfiguracijsko orodje in se prepričajte, da je disk del navideznega diska, ali krmilnik preklopite v način HBA (pass-through), če ga podpira.
Stranke dedicated strežnikov INTROSERV se lahko obrnejo na podporo, če diska v ESXi ni videti. Podpora preveri konfiguracijo krmilnika in strojno opremo strežnika.
Scenarij 4. Na sistemskem disku je malo prostora za datastore ali ga sploh ni
Od različice ESXi 7.0 naprej namestitveni program na zagonskem disku ustvari zagonske particije in particijo ESX-OSData. Privzeto te sistemske particije zasedejo do 138 GB. Če je zagonski disk velik 142 GB ali manj, namestitveni program na njem sploh ne ustvari lokalnega datastora. Na večjem disku dobi datastore samo preostali prostor. Disk je viden, vendar je na njem malo prostora ali ga sploh ni.
To ni napaka. Natančna razporeditev je odvisna od velikosti diska in možnosti namestitve. Če potrebujete prostor na sistemskem disku, ESXi ponovno namestite z manjšimi sistemskimi particijami. Ko se prikaže zagonski zaslon namestitvenega programa ESXi, pritisnite Shift+O za urejanje zagonskih možnosti in na konec vrstice dodajte naslednji parameter. To je zagonska možnost namestitvenega programa, ne ukaz za ESXi Shell:
systemMediaSize=min
Pri vrednosti min sistemske particije zasedejo 33 GB. Ta vrednost je namenjena strežnikom z enim diskom in majhnim naborom funkcij. Druge vrednosti so small (69 GB, za strežnike z vsaj 512 GB RAM), default (138 GB) in max (ves razpoložljivi prostor). Možnost je na voljo od različice ESXi 7.0 Update 1c.
Ponovna namestitev ESXi z novo razporeditvijo particij izbriše obstoječi lokalni datastore na sistemskem disku. Navidezne stroje predhodno prestavite ali varnostno kopirajte.
Druga možnost je, da ESXi pustite na sistemskem disku, datastore pa ustvarite samo na drugih diskih.
Zaključek
Najprej preverite, ali ESXi disk vidi in ali je na njem našel star nosilec VMFS. Če disk vsebuje datastore, ki ga potrebujete, ga priklopite ali izvedite resignature. Če disk vsebuje stare podatke, ki jih ne potrebujete, izbrišite particijsko tabelo in ustvarite nov datastore. Če diska sploh ni videti, preverite način delovanja krmilnika in podporo gonilnikov.