Jak zmniejszyć wirtualną maszynę VirtualBox i zwolnić miejsce na dysku
Domyślnie VirtualBox tworzy dyski dynamiczne, które rosną wraz z upływem czasu podczas dodawania danych. Jeśli jednak później usuniesz dane z maszyny wirtualnej, zauważysz, że dysk nie zmniejsza się automatycznie. Ale można ręcznie zmniejszyć dysk dynamiczny za pomocą ukrytego polecenia.
Pamiętaj, że spowoduje to zmniejszenie rozmiaru dysku tylko wtedy, gdy zwiększy się jego rozmiar, a Ty od czasu usunięcia danych. Tak więc, jeśli właśnie utworzyłeś dysk dynamiczny, nie zmniejszy go. Jeśli jednak utworzysz dysk dynamiczny, pobierzesz do niego 10 GB danych, a następnie skasujesz te 10 GB danych, powinieneś być w stanie zmniejszyć dysk o około 10 GB.
Krok pierwszy: Upewnij się, że korzystasz z dysku dynamicznego
Ten proces działa tylko w przypadku dysków dynamicznych, które mogą się zwiększać i zmniejszać. Dyski dynamiczne mogą mieć do pewnego maksymalnego rozmiaru - na przykład 50 GB - ale w rzeczywistości osiągają maksymalny rozmiar tylko wtedy, gdy zawierają tak dużo danych. Naprawione dyski wielkości zawsze będą miały maksymalny rozmiar.
Jeśli masz dysk o ustalonym rozmiarze, który chcesz zmniejszyć, możesz go najpierw przekonwertować na dysk dynamiczny, a następnie postępować zgodnie z instrukcjami poniżej. Na przykład, jeśli masz stały dysk o rozmiarze 50 GB zawierający tylko 20 GB danych i konwertujesz go na dysk dynamiczny, powinieneś być w stanie zmniejszyć go, aby uzyskać tylko 20 GB miejsca.
Aby sprawdzić, czy dysk jest dynamiczny lub o stałym rozmiarze w VirtualBox, kliknij prawym przyciskiem myszy maszynę wirtualną, która używa dysku i wybierz "Ustawienia". Kliknij kartę "Pamięć" i wybierz dysk. Zobaczysz, jaki typ dysku jest wyświetlany obok "Szczegóły". Na przykład na poniższym zrzucie ekranu "Dynamicznie przydzielona pamięć" oznacza, że jest to dysk dynamiczny.
Krok drugi: Napisz Zeros na dysk w wirtualnej maszynie
Pamiętaj, aby usunąć wszystkie dane, których już nie potrzebujesz na dysku wewnątrz maszyny wirtualnej, aby zwolnić miejsce przed kontynuowaniem. Usuń pliki, których nie potrzebujesz, odinstaluj programy, których już nie używasz, i opróżnij Kosz. Następnie musisz zastąpić puste miejsce zerami.
Dla systemów operacyjnych gości Windows
Jeśli masz zainstalowany system Windows na maszynie wirtualnej, powinieneś teraz uruchomić maszynę wirtualną i zdefragmentować jej dyski. Wewnątrz maszyny wirtualnej wyszukaj w menu Start "Defragmentacja" i uruchom narzędzie "Defragmentator dysków" lub "Defragmentuj i optymalizuj dyski". Wybierz dysk, który chcesz skompaktować, i kliknij "Defragmentuj dysk".
Po zakończeniu procesu defragmentacji należy wpisać zera do pustego miejsca wewnątrz maszyny wirtualnej. Kiedy usuwasz pliki, usunięte dane są nadal przechowywane na dysku, więc VirtualBox nie może automatycznie zmniejszyć dysku. Ale kiedy wypiszesz zera nad usuniętymi plikami, VirtualBox zobaczy dużą liczbę zer-pustej przestrzeni, innymi słowy - i będzie w stanie skompaktować dysk.
Aby to zrobić, pobierz narzędzie SDelete od firmy Microsoft. Wyodrębnij sdelete.exe
plik do folderu na twoim komputerze.
Otwórz okno wiersza polecenia. Aby to zrobić, otwórz menu Start, wyszukaj "Wiersz polecenia" i uruchom skrót.
Przejdź do katalogu zawierającego sdelete.exe
plik przez wpisanie Płyta CD
, naciskając spację, wprowadzając ścieżkę do katalogu i naciskając klawisz Enter. Pamiętaj, aby ująć ścieżkę w cudzysłów, jeśli zawiera znak spacji. To powinno wyglądać tak:
cd "C: \ ścieżka \ do \ folderu"
Na przykład, jeśli wyodrębniono plik sdelete.exe
plik do folderu pobierania twojego konta użytkownika, a twoją nazwą użytkownika Windows jest Bob, uruchomisz następujące polecenie:
cd "C: \ Users \ bob \ Downloads"
Aby szybko wypełnić ścieżkę katalogu, po prostu wpisz Płyta CD
w oknie wiersza polecenia naciśnij spację, a następnie przeciągnij i upuść ikonę folderu z paska adresu menedżera plików.
Uruchom następujące polecenie:
sdelete.exe c: -z
Spowoduje to zapisanie zer na całej wolnej przestrzeni dyskowej na dysku C :. Jeśli chcesz zmniejszyć napęd dodatkowy znajdujący się na innej liście dysku w maszynie wirtualnej, wpisz jego literę zamiast c :. Właśnie do tego zaprojektowano narzędzie. Jak zauważa strona SDelete na stronie Microsoftu, opcja -z jest "dobra do optymalizacji dysków wirtualnych".
Zanim przejdziesz dalej, zostaniesz poproszony o wyrażenie zgody na umowę licencyjną narzędzia. Wystarczy kliknąć "Zgadzam się".
Zaczekaj, aż proces się zakończy. Po zakończeniu zamknij maszynę wirtualną za pomocą opcji "Zamknij system" w menu Start. Jesteś teraz gotowy do kompaktowania.
Dla systemów operacyjnych gości Linux
Jeśli masz zainstalowany system Linux na maszynie wirtualnej - system operacyjny gościa Linux zamiast systemu operacyjnego gościa Windows, innymi słowy - możesz pominąć proces defragmentacji i użyć wbudowanych poleceń, aby wyzerować wolne miejsce na dysku. Użyjemy Ubuntu jako przykładu tutaj, ale proces będzie podobny w innych dystrybucjach Linuksa.
Aby to zrobić, musisz najpierw zainstalować zerofree
narzędzie wewnątrz maszyny wirtualnej. Powinien być dostępny w repozytoriach oprogramowania twojej dystrybucji Linuksa. Można na przykład zainstalować go w systemie Ubuntu, uruchamiając następujące polecenie na terminalu wewnątrz maszyny wirtualnej:
sudo apt install zerofree
W rzeczywistości nie możesz tego użyć zerofree
na twoim / partycji, gdy jesteś uruchomiony w standardowym środowisku Linux. Zamiast tego będziesz chciał uruchomić specjalny tryb odzyskiwania, w którym normalna partycja root nie jest podłączona. W systemie Ubuntu uruchom ponownie maszynę wirtualną i wielokrotnie naciskaj klawisz "Esc" podczas uruchamiania, aby uzyskać dostęp do menu Gruba. Gdy pojawi się menu Grub, wybierz "* Zaawansowane opcje dla Ubuntu" i naciśnij Enter.
Wybierz opcję "(tryb odzyskiwania)" skojarzoną z najnowszym jądrem systemu Linux - czyli opcję o najwyższym numerze wersji u góry listy - i naciśnij klawisz Enter.
Wybierz "root" w menu odzyskiwania, aby uruchomić system z poleceniem powłoki głównej.
Naciśnij "Enter", kiedy na ekranie pojawi się "Press Enter for maintenance". Otrzymasz monit terminalu.
W wierszu polecenia określ, który dysk wirtualny chcesz wyzerować, uruchamiając następujące polecenie:
df
Na wyjściu poniżej widzimy to / dev / sda1
to nasze jedyne rzeczywiste urządzenie dyskowe. Wiemy o tym, ponieważ jest to jedyny dysk z / dev /
w lewej kolumnie.
Zakładając, że twoja maszyna wirtualna została utworzona z ustawieniami domyślnymi, będzie miała tylko / dev / sda1
, która jest pierwszą partycją na pierwszym dysku twardym. Jeśli ustawiłeś różne rzeczy na wielu dyskach lub wielu partycjach, konieczne może być wyzerowanie innej partycji lub wyzerowanie wielu partycji.
Jesteś teraz gotowy do wyzerowania dysku. Uruchom następujące polecenie, zastępując / dev / sda1
z nazwą urządzenia partycji, dla której chcesz zapisać zera. Większość ludzi po prostu będzie miała / dev / sda1
urządzenie do zera.
zerofree -v / dev / sda1
Po zakończeniu procesu zerowania uruchom następujące polecenie, aby zamknąć maszynę wirtualną:
postój
Po wyświetleniu komunikatu "System wstrzymany" na ekranie system został zatrzymany i można teraz wyłączyć maszynę wirtualną. Zamknij okno maszyny wirtualnej i wybierz "Wyłącz maszynę wirtualną".
Krok trzeci: znajdź polecenie VBoxManage
Reszta procesu zostanie wykonana poza maszyną wirtualną w systemie operacyjnym hosta. Na przykład, jeśli na komputerze działa system Windows 10 i system Windows 7 działający na maszynie wirtualnej, resztę procesu wykonasz w systemie Windows 10.
Ta opcja nie jest widoczna w interfejsie graficznym VirtualBox. Zamiast tego musisz użyć VBoxManage.exe
dowództwo.
Zlokalizuj to polecenie, aby kontynuować. W systemie Windows znajdziesz go w katalogu programu VirtualBox, który jest C: \ Program Files \ Oracle \ VirtualBox
domyślnie. Jeśli zainstalowałeś VirtualBox w innym katalogu, spójrz tam.
Otwórz okno wiersza polecenia. Aby to zrobić, otwórz menu Start, wpisz cmd
i naciśnij Enter.
Rodzaj Płyta CD
w wierszu polecenia, a następnie ścieżce folderu, w którym znajduje się polecenie VBoxManage. Musisz załączyć go w cudzysłów.
Możesz to szybko zrobić, pisząc Płyta CD
w oknie wiersza polecenia, a następnie przeciągając i upuszczając ikonę folderu z paska adresu menedżera plików do wiersza polecenia.
Jeśli używasz domyślnej ścieżki, powinna wyglądać następująco:
cd "C: \ Program Files \ Oracle \ VirtualBox"
UWAGA: W tych instrukcjach założono, że używasz VirtualBox w systemie Windows. Jeśli używasz VirtualBox na macOS lub Linux, możesz po prostu otworzyć okno terminala i uruchomić vboxmanage
polecenie normalnie, tak jak każde inne polecenie.
Krok czwarty: znajdź ścieżkę dostępu do dysku, który chcesz kompaktować
Uruchom następujące polecenie w oknie wiersza polecenia, aby wyświetlić listę wszystkich wirtualnych dysków twardych na komputerze:
VBoxManage.exe lista hdds
Krok piąty: kompaktuj dysk
Aby skompaktować dysk, musisz go użyć VBoxManage.exe
z poprawnym poleceniem. Po prostu uruchom następujące polecenie, zastępując ścieżkę do pliku VDI dysku ścieżką do dysku w systemie, który został znaleziony za pomocą powyższej komendy. Pamiętaj, aby ująć ścieżkę pliku w cudzysłów, jeśli zawiera spację w dowolnym miejscu na ścieżce.
To powinno wyglądać tak:
Dysk VBoxManage.exe modifymedium "C: \ path \ to \ disk.vdi" --compact
Na przykład, ponieważ ścieżka do pliku jest C: \ Users \ chris \ VirtualBox VMs \ Windows 7 \ Windows 7.vdi
w naszym przykładzie uruchomilibyśmy następujące polecenie:
VBoxManage.exe dysk modifymedium "C: \ Users \ chris \ VirtualBox VMs \ Windows 7 \ Windows 7.vdi" --compact
VirtualBox skompresuje dysk i jeśli chcesz, możesz od razu uruchomić maszynę wirtualną. To, ile miejsca zaoszczędzisz, zależy od tego, ile pustej przestrzeni było do odzyskania.
Rozważ także usuwanie migawek
VirtualBox pozwala na tworzenie migawek dla każdej maszyny wirtualnej. Zawierają pełny obraz maszyny wirtualnej po utworzeniu migawki, co pozwala przywrócić ją do poprzedniego stanu. Może to zająć dużo miejsca.
Aby zwolnić więcej miejsca, usuń migawki, których nie używasz. Aby wyświetlić migawki zapisane dla maszyny wirtualnej, zaznacz ją w głównym oknie VirtualBox i kliknij przycisk "Migawki" po prawej stronie opcji Szczegóły na pasku narzędzi. Jeśli nie potrzebujesz już migawki, kliknij ją prawym przyciskiem myszy i wybierz "Usuń migawkę", aby zwolnić miejsce.