30Jul

Så här krymper du en VirtualBox Virtual Machine och frigör diskutrymme

click fraud protection

Som standard skapar VirtualBox dynamiska diskar som växer över tiden när du lägger till data. Om du tar bort data från den virtuella maskinen senare kommer du dock märka att disken inte automatiskt krymper. Men du kan manuellt krympa en dynamisk disk med hjälp av ett dolt kommando.

Kom ihåg att det här bara kommer att krympa disken om den är vuxen i storlek och sedan har du tagit bort data. Så om du bara skapat en dynamisk disk kommer den inte att krympa den. Men om du har skapat en dynamisk disk, laddat ner 10 GB data i den och sedan raderade den 10 GB data efteråt ska du kunna krympa disken med cirka 10 GB.

Steg 1: Se till att du använder en dynamisk disk

Den här processen fungerar bara för dynamiska diskar, som kan växa och krympa i storlek. Dynamiska skivor kan vara upp till en viss maximal storlek på 50 GB, till exempel - men de växer bara till den maximala storleken när de innehåller så mycket data. Fasta formatskivor kommer alltid att vara deras maximala storlek.

Om du har en disk med fast storlek som du vill krympa, kan du först konvertera den till en dynamisk disk och följ sedan anvisningarna nedan. Om du till exempel har en fast disk på 50 GB med endast 20 GB data på den och konverterar den till en dynamisk disk, bör du kunna krympa den för att ta upp endast 20 GB utrymme.

instagram viewer

För att kontrollera om en disk är dynamisk eller fast storlek i VirtualBox, högerklickar du på den virtuella maskinen som använder skivan och väljer "Inställningar".Klicka på fliken "Förvaring" och välj disken. Du får se vilken typ av disk det visas bredvid "Detaljer".Till exempel, i skärmdumpen nedan, indikerar "Dynamiskt allokerad lagring" att det här är en dynamisk disk.

Steg två: Skriv nollor till disken i den virtuella maskinen

Var noga med att radera data som du inte längre vill ha på skivan i den virtuella maskinen för att frigöra utrymme innan du fortsätter. Ta bort filer som du inte behöver, avinstallera program du inte längre använder och töm papperskorgen. Då måste du skriva över det tomma utrymmet med nollor.

för Windows-operativsystem för operativsystem

Om du har Windows installerat i den virtuella maskinen bör du nu starta upp den virtuella maskinen och defragmentera dess diskar. Inuti den virtuella maskinen, sök på Start-menyn för "Defragmentation" och starta verktyget "Diskdefragmenterare" eller "Defragmentera och optimera drivrutiner".Välj den skiva du vill komprimera och klicka på "Defragment disk".

Efter att defragmenteringsprocessen är klar måste du skriva nollor till det tomma utrymmet i den virtuella maskinen. När du tar bort filer lagras de raderade dataen fortfarande på skivan, så VirtualBox kan inte automatiskt krympa enheten. Men när du skriver nollor över de raderade filerna, kommer VirtualBox att se en stor mängd nollar-tomt utrymme, med andra ord-och kunna komprimera disken.

För att göra detta, ladda ner SDelete-verktyget från Microsoft. Extrahera filen sdelete.exe till en mapp på din dator.

Öppna ett kommandotolfönster. För att göra det, öppna Start-menyn, sök efter "Kommandotolk" och starta genväg.

Ändra till katalogen som innehåller filen sdelete.exe genom att skriva cd, tryck på Space, mata in sökvägen till katalogen och tryck på Enter. Var noga med att bifoga sökvägen i citattecken om den innehåller ett mellanslag. Det ska se så här ut:

cd "C: \ path \ to \ folder"

Om du till exempel extraherade filen sdelete.exe till ditt användarkonto nedladdningsmapp och ditt Windows användarnamn är Bob, skulle du köra följande kommando:

cd "C: \ Användare \ bob \ Nedladdningar"

För att snabbt fylla i katalogvägen, skriv bara cd i kommandotolken, tryck på Mellanslag och dra och släpp sedan mappikonen från adresshanterarens adressfält.

Kör följande kommando:

sdelete.exe c: -z

Detta kommer att skriva nollor till allt ledigt diskutrymme på enhet C: .Om du vill krympa en sekundär enhet som ligger i ett annat skrivbrev i den virtuella maskinen, skriv dess skrivbrev istället för c: .Detta är vad verktyget var konstruerat för. Som SDelete-sidan på Microsofts webbplatsnoteringar är -z-alternativet "bra för optimering av virtuell disk".

Du kommer att bli ombedd att godkänna verktygets licensavtal innan du fortsätter. Klicka bara på "Agree".

Vänta på processen att slutföra. När det är klart, stäng av din virtuella maskin med alternativet "Stäng" i sin Start-meny. Du är nu redo att komprimera den.

för Linux Guest Operating Systems

Om du har Linux installerat i den virtuella maskinen - ett Linux-gästoperativsystem istället för ett Windows-operativsystem, med andra ord-du kan hoppa över defragmenteringsprocessen och använda inbyggda kommandon för att nollställa ledigt utrymme på enheten. Vi använder Ubuntu som exempel här, men processen kommer att likna andra Linux-distributioner.

För att göra detta måste du först installera zerofree-verktyget i den virtuella maskinen. Det ska vara tillgängligt i din Linux-distributions programvaruförteckning. Till exempel kan du installera den på Ubuntu genom att köra följande kommando vid terminalen inuti din virtuella maskin:

sudo apt install zerofree

Du kan inte faktiskt använda zerofree på din / partitionen medan du startas upp i standard Linux-miljö.I stället vill du starta in i ett speciellt återställningsmodus där din normala rotpartition inte är monterad. På Ubuntu startar du om din virtuella maskin och trycker upprepade gånger på "Esc" -knappen medan den startar för att komma till Grub-menyn. När Grub-menyn visas, välj "* Avancerade alternativ för Ubuntu" och tryck på Enter.

Välj alternativet "(återställningsläge)" som är kopplat till den senaste Linuxkärnan, det vill säga alternativet med det högsta versionsnumret nära toppen av listan och tryck på Enter.

Välj "root" i återställningsmenyn för att starta till en root shell prompt.

Tryck på "Enter" efteråt när "Tryck Enter for Maintenance" visas på skärmen. Du får en terminalprompt.

På kommandoraden bestämmer du vilken virtuell skiva du vill nollställa genom att köra följande kommando:

df

I nedanstående produktion kan vi se att /dev/ sda1 är vår enda verkliga diskenhet här. Vi vet det eftersom det är den enda disken med /dev/ i den vänstra kolumnen.

Antag att din virtuella maskin skapades med standardinställningarna, det kommer bara att ha /dev/ sda1, vilket är den första partitionen på den första hårddisken. Om du har ställt upp saker på olika sätt med flera skivor eller flera partitioner, kan du behöva nollställa en annan partition eller flera flera partitioner.

Du är nu redo att nollställa disken. Kör följande kommando, ersätt /dev/ sda1 med enhetens namn på den partition du vill skriva nollor till. De flesta kommer bara att ha en /dev/ sda1-enhet till noll.

zerofree -v /dev/ sda1

När nollprocessen är klar kör du följande kommando för att stänga av den virtuella maskinen:

halt

När du ser meddelandet "Systemstoppad" på skärmen har systemet stannat och du kan stänga nuner din virtuella maskin. Stäng den virtuella maskinens fönster och välj "Stäng av den virtuella maskinen".

Steg tre: Hitta kommandot VBoxManage

Resten av processen kommer att utföras utanför den virtuella maskinen, på ditt värd operativsystem. Om du till exempel har Windows 10 som körs på din dator och Windows 7 körs i en virtuell maskin, utför du resten av processen på Windows 10.

Det här alternativet exponeras inte i VirtualBox grafiska gränssnitt. I stället måste du använda kommandot VBoxManage.exe.

Leta upp det här kommandot för att fortsätta. På Windows hittar du det i VirtualBox-programkatalogen, som är C: \ Program Files \ Oracle \ VirtualBox som standard. Om du installerade VirtualBox till en annan katalog, kolla du istället.

Öppna ett kommandotolken. För att göra detta, öppna Start-menyn, skriv cmd och tryck på Enter.

Skriv cd i kommandotolken, följt av sökvägen för mappen där kommandot VBoxManage är. Du måste bifoga den i citat.

Du kan snabbt göra detta genom att skriva cd i fönstret Kommandotolken och sedan dra och släppa mappikonen från filhanterarens adressfält till kommandotolken.

Om du använder standardvägen ska den se ut som följande:

cd "C: \ Program Files \ Oracle \ VirtualBox"

OBS! Dessa anvisningar förutsätter att du använder VirtualBox på Windows. Om du använder VirtualBox på macOS eller Linux kan du bara öppna ett terminalfönster och köra kommandot vboxmanage normalt, som du skulle ha något annat kommando.

Steg fyra: Sök vägen till den disk som du vill komprimera

Kör följande kommando i kommandotolken för att visa en lista över alla virtuella hårddiskar på din dator:

VBoxManage.exe lista hdds

Titta igenom listan och identifiera filvägen till den virtuella disken du vill komprimera. Låt oss säga att vi vill ändra den virtuella skivan som är kopplad till den virtuella maskinen som heter "Windows 7".Som vi kan se i utmatningen nedan är sökvägen till den virtuella skivan på vårt system C: \ Users \ chris \ VirtualBox VMs \ Windows 7 \ Windows 7.vdi.

Steg fem: Komprimera disken

För att komprimera disken måste du använda VBoxManage.exe med rätt kommando. Bara köra följande kommando, ersätta sökvägen till disken VDI-filen med sökvägen till disken på ditt system som du hittade med ovanstående kommando. Var noga med att bifoga sökvägen för filen i citat om den innehåller ett utrymme var som helst i sökvägen.

Det ska se ut så här:

VBoxManage.exe modifymediumdisk "C: \ path \ to \ disk.vdi" --compact

Till exempel, eftersom sökvägen till filen är C: \ Users \ chris \ VirtualBox VMs \ Windows7 \ Windows 7.vdi i vårt exempel kör vi följande kommando:

VBoxManage.exe modifymedium disk "C: \ Användare \ chris \ VirtualBox VMs \ Windows 7 \ Windows 7.vdi" --compact

VirtualBox kommer kompaktskivan och du kan omedelbart starta upp den virtuella maskinen efteråt, om du vill. Hur mycket utrymme du än sparar beror på hur mycket tomt utrymme det var att återställa.

Också överväga att radera ögonblicksbilder

VirtualBox låter dig skapa ögonblicksbilder för varje virtuell maskin. Dessa innehåller en hel bild av den virtuella maskinen när du skapade ögonblicksbilden, så att du kan återställa den till ett tidigare tillstånd. Dessa kan ta mycket utrymme.

För att frigöra mer utrymme, ta bort ögonblicksbilder du inte använder. Om du vill visa snapshots som du har sparat för en virtuell maskin markerar du den i det huvudsakliga VirtualBox-fönstret och klickar på knappen "Snapshots" till höger om Detaljer på verktygsfältet. Om du inte längre behöver en ögonblicksbild, högerklicka på den i listan och välj "Ta bort ögonblicksbild" för att frigöra utrymme.