Zelo pogosto pri brisanju posnetkov ali utrditvi diskov navideznih strojev na VMWare ESXi gostiteljih naletim na napako "Do datoteke ni mogoče dostopati, ker je zaklenjena" To je precej pogosta težava zaradi napak v varnostnem sistemu VM (težavo sem spoznal v Veeam, HP Data Protector, Veritas). Zaklepanje navideznega diska posnetka navideznega stroja vam ne bo omogočilo konsolidacije (potrebna je konsolidacija diskov navideznega računalnika), shranjevanje vMotion na drug diskovni niz, varnostno kopiranje ali brisanje trenutnega posnetka. Včasih virtualnega stroja s ključavnicami ni mogoče preprosto vklopiti.
Napaka pri dostopu do zaklenjene datoteke navideznega diska ali posnetka v VMWare je lahko videti tako:
Do datoteke ni mogoče dostopati, saj je zaklenjena. Med konsolidacijo diskov je prišlo do napake: en ali več diskov je zasedeno.
Ogledate si lahko tudi to napako:
Med konsolidacijo diskov je prišlo do napake: msg.snapshot.error-DISKLOCKED.
Najpogostejša napaka "Do datoteke ni mogoče dostopati, ker je zaklenjena":
- Če nekatere datoteke na vključenem virtualnem stroju vsebujejo oznake zaklepanja drugih ESXi gostiteljev;
- Ko dodate navidezne diske v varnostno kopijo naprave med neuspešnimi sejami varnostnega kopiranja;
Če želite najti izvor zaklepa in ga odstraniti, morate najprej identificirati zaklenjene datoteke.
- Z odjemalcem SSH se povežite z gostiteljem ESXi, na katerem je registriran problematični VM;
- Pojdite v imenik z datotekami navideznega stroja:
cd / vmfs / obsega / VMFS_DATASTORE_NAME / LOCKED_VM
- Poiščite napake pri konsolidaciji dnevnikov vmware.log, zaklep datotek:
mačka vmware.log | grep ključavnica
- Dnevnik mora vsebovati približno naslednje napake:
VigorSnapshotManagerConsolidateCallback: snapshotErr = Zaklep datoteke ni uspel (5: 4008) 2020-01-13T05: 07: 11.432Z | vmx | I125: DISK: diska ni mogoče odpreti "/vmfs/volumes/5121c3ff-230b21a-41aa-21d92b219221/msk-web01/msk-web01_1-000002.vmdk": datoteke ni mogoče zakleniti (16392). 2020-01-13T05: 07: 11.432Z | Delavec # 1 | I125: DISKLIB-LIB: ni uspelo odpreti '/vmfs/volumes/5121c3ff-230b21a-41aa-21d92b219221/msk-web01/msk-web01-000002.vmdk' z zastavami 0xa Zaklepanje datoteke (16392). 2020-01-13T05: 07: 11.432Z | Delavec # 1 | I125: DISK: diska ni mogoče odpreti "/vmfs/volumes/5121c3ff-230b21a-41aa-21d92b219221/msk-web01/msk-web01-000002.vmdk": datoteke ni mogoče zakleniti (16392). 2020-01-13T05: 07: 11.432Z | vmx | I125: [msg.fileio.lock] Datoteke ni bilo mogoče zakleniti
- Ta primer kaže, da je datoteka zaklenjena
msk-web01_1-000002.vmdk
; - Z naslednjim ukazom lahko prikažete trenutno verigo posnetkov iz podane na ploščat disk:
vmkfstools -qv10 msk-web01_1-000002.vmdk
- Zdaj bomo prikazali podatke o posnetku in njegovem lastniku (lastnik RO):
vmkfstools -D msk-web01-000001-delta.vmdk
Ključavnica [vrsta 10c000021 izravnava 242835456 v 856, odmik hb 3153920 gen 3, način 1, lastnik 5cbac61a-4b6e32b7-0480-d06726ae7900 mtime 5199410 številka 0 gblnum 0 gblgen 0 gblbrk 0] Lastnik RO [0] HB Offset 3153920 5cbac61a-4b6e32b7-0480-d06726ae7900 Addr, gen 859, povezave 1, vrsta reg, zastave 0, uid 0, gid 0, način 600
Po vrsti Lastnik RO naveden je MAC naslov omrežne kartice gostitelja ESXi, ki je blokiral to datoteko posnetka (naslov MAC je poudarjen na posnetku zaslona). Upoštevajte tudi vrednost načina:
- 1. način - zaklepanje / branje pisanja (na primer z vklopljenim VM);
- 2. način - ponavadi pomeni, da pogon zaklene aplikacija za varnostno kopiranje.
Če želite najti ESXi strežnik z znanim MAC naslovom, lahko v PowerCLI uporabite naslednje ukaze (pretvorite prej prejeti MAC naslov v obliko dvopičje):
Uvozi-modul VMware.VimAutomation.Core -ErrorAction SilentlyContinue
connect-viserver vcenter1
Get-VMHost | Get-VMHostNetworkAdapter | Where-Object $ _. Mac-like "d0: 67: 26: ae: 79: 00" | Format-Seznam-lastnost *
V polju bo navedeno ime gostitelja ESXi VMhost.
Tabelo ARP lahko izdelate tudi neposredno iz gostitelja ESXi in dobite naslove IP in MAC vseh sosednjih strežnikov ESXi v omrežju VMkernel:
esxcli network ip seznam sosedov
Če želite odstraniti ključavnico iz datoteke VM, preprosto znova zaženite najdenega gostitelja ESXi (predhodno izselite vse VM-je iz njega z uporabo VMotion). Če gostitelja ne morete znova zagnati, znova zaženite storitev Management Agent (hostd) v načinu vzdrževanja s gostiteljske konzole SSH:
services.sh ponovno zaženite
Po tem poskusite utrditi ali odstraniti posnetek VM.
Napaka »Do datoteke ni mogoče dostopati, saj je zaklenjena"Velikokrat se pojavi v Varnostno kopiranje in razmnoževanje Veeam pri uporabi proxy Veeam. Zaradi napak pri varnostni kopiji morda ne bo pravilno odklopil pogona virtualne naprave.Če želite odpraviti težavo, odprite nastavitve VM-ja, na katerem je nameščen proxy Veeam. Odstranite VM disk, katerega datoteke so zaklenjene iz opreme VM.
Prepričajte se, da ste izbrali »Odstrani z navideznega stroja« in ne »Odstrani z navideznega stroja in izbriši datoteke s diska«. V nasprotnem primeru lahko slučajno izbrišete disk vmdk.