Czy można zmniejszyć rzadki obraz dysku systemu gościa Mac OS X w VMWare Fusion?

16

Używam VMWare Fusion na moim komputerze Mac, aby uruchomić wirtualną maszynę z systemem Windows 7 i maszyny wirtualne z systemem Windows XP zgodne z Microsoft IE.

W VMWare Tools w systemach-gościach Windows dostępna jest opcja „Zmniejsz”, która pozwala zmniejszyć rozmiar rzadkiego obrazu dysku używanego przez system-gościa, aby zaoszczędzić miejsce na dysku twardym na OX hosta.

Niedawno stworzyłem kolejną maszynę wirtualną, tym razem z systemem Snow Leopard Server. Zastanawiałem się, czy mogę zmniejszyć obraz dysku zapasowego używanego również przez tę maszynę, ale nie mogę znaleźć aplikacji VMWare Tools w systemie gościa Mac, mimo że VMWare Tools zostały zainstalowane (ponieważ funkcja folderów współdzielonych VMWare działa).

Czy jest jakiś sposób, aby zmniejszyć obraz dysku rzadkiego używanego przez systemy gościa Mac OS X w VMWare Fusion?

Paul D. Waite
źródło
1
Niestety nie działa to już w VMWare Fusion 4, ponieważ vdiskmanager nie znajduje się już w tym folderze. Wydaje się, że nikt nie wie, gdzie on teraz istnieje.
@ user128435: Na szczęście VMWare Fusion 4 ma interfejs GUI dla tej funkcji .
Paul D. Waite
1
W oknie biblioteki maszyn wirtualnych wybierz maszynę wirtualną bez jej uruchamiania. Odśwież wykres słupkowy, który można odzyskać , a następnie kliknij Oczyść, jeśli jest dostępny. Zobacz także KB 1001934: Defragmentacja, zmniejszanie i czyszczenie dysków maszyn wirtualnych VMware Fusion .
jww

Odpowiedzi:

6

W VMware Fusion od wersji 4 możesz przejść do preferencji VM -> Ogólne -> Wyczyść maszynę wirtualną.

Dodatkowo znajduje się tabela, na której można zobaczyć, jakiego rozmiaru oczekuje się po zmniejszeniu.

sja
źródło
To prawda, ale dzięki VMware Fusion 7+ nigdy nie oferuje czyszczenia gościa Mac OS.
dakcarto
@dakcarto - VMware Fusion 5 oferuje to, ale tylko wtedy, gdy jest coś do odzyskania. Być może nie masz nic do odzyskania? (Mam 33 GB miejsca do odzyskania dla gościa Windows 8.1 po aktualizacji 8.0 → 8.1).
jww
10

Aha - rzeczywiście możesz, zgodnie z tym wątkiem na forach dyskusyjnych VMWare na ten temat , zakładając:

  1. Plik jest rzadkim obrazem dysku i nie jest wstępnie przydzielony.
  2. Maszyna wirtualna nie ma migawek.

W skrócie:

Usuń wolne miejsce na dysku systemu-gościa z systemu-gościa za pomocą Narzędzia dyskowego, a następnie zmniejsz dysk systemu-gościa z systemu- hosta za pomocą vmware-vdiskmanagerwiersza polecenia.

W długim:

W systemie operacyjnym gościa:

  1. Otwórz Narzędzie dyskowe.
  2. Wybierz partycję systemu-gościa.
  3. Przejdź do zakładki „Usuń”.
  4. Kliknij przycisk „Usuń wolne miejsce”.
  5. Upewnij się, że wybrano „Zeruj usunięte pliki” i usuń wolne miejsce.
  6. Po zakończeniu zamknij Narzędzie dyskowe i zamknij system operacyjny gościa.

Lub w terminalu systemu-gościa, gdy partycja nosi nazwę „Macintosh HD”:

diskutil secureErase freespace 0 Macintosh\ HD
sudo halt

W systemie operacyjnym hosta:

  1. Otwórz terminal i wpisz:

    [ -d "/Library/Application Support/VMware\ Fusion" ] && alias vmware-vdiskmanager="/Library/Application Support/VMware Fusion/vmware-vdiskmanager" || alias vmware-vdiskmanager="/Applications/VMware\ Fusion.app/Contents/Library/vmware-vdiskmanager"; vmware-diskmanager -k

  2. Wpisz „space”, a następnie ścieżkę do pliku dysku wirtualnego maszyny wirtualnej.

  3. Hit return.

Plik dysku wirtualnego systemu gościa znajduje się w pliku maszyny wirtualnej. Np. Jeśli plik maszyny wirtualnej znajduje się w /Users/you/VM, ścieżka do jego dysku wirtualnego to /Users/you/VM.vmwarevm/VM.vmdk.

Dla przypomnienia skurczyło to moją maszynę wirtualną Snow Leopard z 15 GB do 6 GB.

Paul D. Waite
źródło
8

Dodali opcję CLI, która była bardzo łatwa - zrób to z poziomu systemu operacyjnego gościa:

sudo /Library/Application\ Support/VMware\ Tools/vmware-tools-cli disk shrink /

Od mudałowa na forach VMware Commmunity :

Nieco łatwiejsza metoda - funkcja zmniejszania jest wbudowana w narzędzie wiersza polecenia VMware Tools:

sudo /Library/Application\ Support/VMware\ Tools/vmware-tools-cli disk shrink /

Spowoduje to najpierw wyczyszczenie pustego miejsca w systemie plików (tak samo jak utworzenie pliku z wypełnieniem zerowym) i wyświetlenie postępu w terminalu gościa. Gdy to zrobisz, zmniejszanie VMDK zostanie wywołane bez wyłączania VM i pojawi się jako pasek postępu w oknie VM.

/ Jest ścieżką do systemu plików, w którym należy wyczyścić puste miejsce. Jeśli masz wiele partycji, możesz je wyczyścić pojedynczo i wykonać końcowy obkurczenie na końcu:

  • vmware-tools-cli disk list aby zobaczyć dostępne lokalizacje do wycierania
  • vmware-tools-cli disk wipe <location> wyczyścić każdą lokalizację (powtórz wiele razy), bez operacji zmniejszania
  • vmware-tools-cli disk shrinkonly wykonać ostatnią operację obkurczania.

Wyjaśnia to również dysk pomocy vmware-tools-cli

Colin
źródło
Jest to najprostszy sposób zmniejszania dysku „jednym poleceniem”. Działa z VMware Fusion 8.
punkt
5

W wariantach VMware Fusion, w wersji 3.x, lokalizacja vmware-vdiskmanager, jak wspomniano w zaakceptowanej odpowiedzi, to:

/ Applications / VMware \ Fusion.app/Contents/Library/vmware-vdiskmanager

Więc wszystko czego potrzebujesz to

/Applications/VMware\ Fusion.app/Contents/Library/vmware-vdiskmanager -k 

następnie przejdź do wyszukiwarki, przejdź do maszyny wirtualnej, która zwykle znajduje się w „~ / Documents / Virtual Machines /”.

Kliknij plik prawym przyciskiem myszy, wybierz „Pokaż zawartość pakietu”, a następnie przeciągnij plik .vmdk do terminala i naciśnij klawisz Enter.

Joe Test
źródło
0

W VMWare Fusion 6 jest to 3-etapowy proces.

  1. Zastąp wszystkie usunięte pliki zerami:

    $ diskutil secureErase freespace 0 Macintosh\ HD

  2. Uruchom narzędzie do zmniejszania dysku VMWare

    $ sudo /Library/Application\ Support/VMWare\ Tools/vmware-tools-cli disk shrinkonly

  3. Zamknij (lub uruchom ponownie) maszynę wirtualną.
Ian
źródło