ich habe in einer VM, die auf lokalem storage liegt, das script sdelfrag.vbs ausgeführt
Code: Alles auswählen
Set WshShell = WScript.CreateObject("WScript.Shell")
Dim fso, d, dc
Set fso = CreateObject("Scripting.FileSystemObject")
Set dc = fso.Drives
WshShell.RegWrite "HKCU\Software\Sysinternals\", 0, "REG_SZ"
WshShell.RegWrite "HKCU\Software\Sysinternals\SDelete\", 0, "REG_SZ"
WshShell.RegWrite "HKCU\Software\Sysinternals\SDelete\EulaAccepted", 1, "REG_DWORD"
For Each d in dc
If d.DriveType = 2 Then
Return = WshShell.Run("defrag " & d & " -f", 1, TRUE)'
Return = WshShell.Run("sdelete -c " & d, 1, TRUE)
End If
Next
Set WshShell = Nothing
das soll die gelöschten bereiche mit nullen füllen. ob's wirklich was bringt konnte ich nicht mehr testen, weil kurz vor ende eine fehlermeldung vom esxi kam, vonwegen, das kein speicherplatz mehr frei sei.
tatsächlich ist der komplette freie speicher abhanden gekommen. ich konnte dann durch verschieben von unwichtigen VMs die wichtigen VMs wieder starten. in der betreffenden VM habe ich eine tmp die von diesem script erzeugt wurde gelöscht und wieder speicherplatz bekommen. aber auf dem esxi datastore ist der speicher nicht frei.
wie kann ich den wieder frei bekommen?