Jak zera wypełnić wolne miejsce na dysku wirtualnym w systemie Windows, aby uzyskać lepszą kompresję?
Chciałbym do tego proste narzędzie typu open source (lub przynajmniej bezpłatne). Prawdopodobnie powinien napisać pełny tak duży plik, jak to możliwe, 0a następnie go usunąć. Tylko jeden przebieg (nie ze względów bezpieczeństwa, ale ze względu na kompresję, wykonujemy kopię zapasową maszyn wirtualnych).
Powinien być uruchamiany z okien systemu Windows, a nie z dysku.
W systemie Linux robię to tak (jako użytkownik):
cd
mkdir wipe
sudo sfill -f -l -l -z ./wipe/
Edycja 1: Zdecydowałem się użyć sdelete z zaakceptowanej odpowiedzi. Rzuciłem okiem na pomoc sdelete:
C:\WINDOWS\system32>sdelete /?
SDelete - Secure Delete v1.51
Copyright (C) 1999-2005 Mark Russinovich
Sysinternals - www.sysinternals.com
usage: sdelete [-p passes] [-s] [-q] <file or directory>
sdelete [-p passes] [-z|-c] [drive letter]
-c Zero free space (good for virtual disk optimization)
-p passes Specifies number of overwrite passes (default is 1)
-q Don't print errors (Quiet)
-s Recurse subdirectories
-z Clean free space
To jest stara wersja. Użyłem przełącznika -c od 2. wywołania i było to dość szybkie (składnia jest poprawna tylko dla starszych wersji wcześniejszych niż 1.6):
c:\>sdelete -c c: (OUTDATED!)
Mam wrażenie, że robi to, co chcę. Narzędzie sdelete jest łatwe w użyciu i łatwe do zdobycia.
Edycja 2: Jak wskazał scottbb w swojej odpowiedzi poniżej, we wrześniu 2011 r. Nastąpiła zmiana narzędzia (wersja 1.6). Opcje -c i -z zmieniły znaczenie. Prawidłowe użycie od wersji 1.6 to
c:\>sdelete -z c:
Edycja 3: Istnieje wersja 2.0 sdelete i sdelete64. Podczas zerowania wydają się być błędne. Wygląda na to, że utknął na 100% przez bardzo długi czas. Niektóre osoby zgłosiły 10 - 40 razy dłużej. Starsza wersja 1.61 nie ma tego problemu. Zobacz https://social.technet.microsoft.com/Forums/en-US/2ffb2539-34ba-4378-aa8a-941d243f117e/sdelete-hangs-at-100?forum=miscutils
Edycja 4: Teraz jest kwestia dynamicznie przydzielanego miejsca na dysku wirtualnym . Jeśli masz dysk 100 GB, który nie jest pełny i używa tylko 30 GB na hoście, wypełnienie zerem nie powinno radykalnie zwiększyć rozmiaru dysku, ponieważ jest to sprzeczne z celem dynamicznej alokacji . Istnieje odpowiedź na Oracle VM VirtualBox https://superuser.com/q/907196/44402 - ale na innych stosach, takich jak VMWare, Xen, XenServer itp., Należy odpowiedzieć osobno.
sdeletejest właściwym narzędziem do pracy, ale zmiana narzędzia z września 2011 r. (wersja 1.6) powoduje, że powyższe odpowiedzi są nieprawidłowe.-cI-zopcje zmieniły znaczenie. Prawidłowe użycie to terazsdelete -z c:\