30Jul

Slik krymper du en VirtualBox Virtual Machine og frigjør diskplass

Som standard oppretter VirtualBox dynamiske disker som vokser over tid mens du legger til data. Men hvis du sletter data fra den virtuelle maskinen senere, vil du legge merke til at disken ikke krympes automatisk. Men du kan manuelt krympe en dynamisk disk ved hjelp av en skjult kommando.

Husk at dette bare vil krympe disken hvis den vokser i størrelse, og du har siden fjernet data. Så, hvis du nettopp har opprettet en dynamisk disk, vil den ikke krympe den. Men hvis du har opprettet en dynamisk disk, lastet ned 10 GB data i den, og deretter slettet den 10 GB data etterpå, bør du kunne krympe disken med ca 10 GB.

Trinn 1: Kontroller at du bruker en dynamisk disk

Denne prosessen fungerer bare for dynamiske disker, som kan vokse og krympe i størrelse. Dynamiske disker kan være opp til en bestemt maksimal størrelse på 50 GB, for eksempel - men de vokser bare til den maksimale størrelsen når de inneholder så mye data. Faste størrelse disker vil alltid være deres maksimale størrelse.

Hvis du har en fast størrelse disk som du vil krympe, kan du først konvertere den til en dynamisk disk og deretter følge instruksjonene nedenfor. Hvis du for eksempel har en fast disk på 50 GB med bare 20 GB data på den og konverterer den til en dynamisk disk, bør du kunne krympe den for å ta opp bare 20 GB plass.

For å sjekke om en disk er dynamisk eller fast størrelse i VirtualBox, høyreklikk den virtuelle maskinen som bruker disken og velg "Innstillinger".Klikk på "Lager" -fanen og velg disken. Du ser hvilken type disk det vises ved siden av "Detaljer".For eksempel, i skjermbildet nedenfor, indikerer "Dynamisk allokert lagring" at dette er en dynamisk disk.

Trinn to: Skriv nuller til disken i den virtuelle maskinen

Pass på å slette data du ikke lenger vil ha på disken inne i den virtuelle maskinen for å frigjøre plass før du fortsetter. Slett filer du ikke trenger, avinstaller programmer du ikke lenger bruker, og tøm papirkurven. Deretter må du overskrive den tomme plassen med nuller.

for Windows Guest Operating Systems

Hvis du har Windows installert inne i den virtuelle maskinen, bør du nå starte den virtuelle maskinen opp og defragmentere diskene. Inne i den virtuelle maskinen, søk på Start-menyen for "Defragmentering" og start "Disk Defragmenter" eller "Defragmenter og Optimaliser Driver" -verktøyet. Velg disken du vil komprimere, og klikk på "Defragmenter disk".

Etter at defragmenteringsprosessen er ferdig, må du skrive nuller til det tomme rommet i den virtuelle maskinen. Når du sletter filer, lagres de slettede dataene på disken, slik at VirtualBox ikke kan krympe stasjonen automatisk. Men når du skriver nuller over de slettede filene, vil VirtualBox se en stor mengde nuller-tom plass, med andre ord - og kunne komprimere disken.

For å gjøre dette, last ned SDelete-verktøyet fra Microsoft. Ekstra filen sdelete.exe til en mappe på datamaskinen din.

Åpne et kommandopromptvindu. For å gjøre dette, åpne Start-menyen, søk etter "Kommandoprompt", og start snarveien.

Endre til katalogen som inneholder filen sdelete.exe ved å skrive inn cd, trykke Space, angi banen til katalogen, og trykk Enter. Pass på å legge inn banen i anførselstegn hvis den inneholder et mellomrom. Det burde se slik ut:

cd "C: \ path \ to \ folder"

Hvis du for eksempel hentet filen sdelete.exe til nedlastingsmappen til brukerkontoen din og ditt Windows-brukernavn er Bob, vil du kjøre følgende kommando:

cd "C: \ Brukere \ bob \ Nedlastinger"

For å raskt fylle ut katalogbanen, skriv bare cd inn i kommandoprompt-vinduet, trykk Space, og dra og slipp deretter mappeikonet fra adresselederens adressefelt.

Kjør følgende kommando:

sdelete.exe c: -z

Dette vil skrive nuller til all ledig diskplass på stasjon C: .Hvis du vil krympe en sekundær stasjon som ligger i et annet stasjonsbrev i den virtuelle maskinen, skriver du stasjonsbokstaven i stedet for c: .Dette er hva verktøyet var designet for. Som SDelete-siden på Microsofts nettstednotater, er -z-alternativet "godt for optimalisering av virtuell disk".

Du blir bedt om å godta verktøyets lisensavtale før du fortsetter. Bare klikk "Godta".

Vent til prosessen skal fullføres. Når det er gjort, slå av den virtuelle maskinen ved å bruke "Avslutt" -alternativet i Start-menyen. Du er nå klar til å komprimere den.

For Linux Guest Operating Systems

Hvis du har Linux installert i den virtuelle maskinen - et Linux-gjest operativsystem i stedet for et Windows-guest-operativsystem, med andre ord-du kan hoppe over defragmenteringsprosessen og bruke innebygde kommandoer til å nullle ledig plass på stasjonen. Vi bruker Ubuntu som eksempel her, men prosessen vil være lik på andre Linux-distribusjoner.

For å gjøre dette må du først installere null-verktøyet i den virtuelle maskinen. Det bør være tilgjengelig i Linux-distribusjonens programvarearkiver. For eksempel kan du installere den på Ubuntu ved å kjøre følgende kommando på terminalen i din virtuelle maskin:

sudo apt install zerofree

Du kan ikke faktisk bruke zerofree på din / partisjonen mens du er oppstart i standard Linux-miljø.I stedet vil du starte opp i en spesiell gjenopprettingsmodus der din normale rotpartisjon ikke er montert. På Ubuntu starter du den virtuelle maskinen, og gjentatte ganger trykker du på "Esc" -tasten mens den starter opp for å få tilgang til Grub-menyen. Når Grub-menyen vises, velg "* Avanserte alternativer for Ubuntu" og trykk Enter.

Velg alternativet "(gjenopprettingsmodus)" som er knyttet til den nyeste Linux-kjernen, det vil si alternativet med høyeste versjonsnummer nær toppen av listen, og trykk Enter.

Velg "root" i gjenopprettingsmenyen for å starte opp til en rotskallprompt.

Trykk "Enter" etterpå når "Trykk Enter for Maintenance" vises på skjermen. Du får en terminalprompt.

På kommandolinjen, bestem hvilken virtuell disk du vil null ved å kjøre følgende kommando:

df

I utgangen nedenfor ser vi at /dev/ sda1 er vår eneste virkelige diskenhet her. Vi vet det fordi det er den eneste disken med /dev/ i venstre kolonne.

Forutsatt at din virtuelle maskin ble opprettet med standardinnstillingene, vil den bare ha /dev/ sda1, som er den første partisjonen på den første harddisken. Hvis du har satt opp ting forskjellig med flere disker eller flere partisjoner, må du kanskje nullstille en annen partisjon eller nullpartisjoner.

Du er nå klar til å nullstille disken. Kjør følgende kommando, erstatte /dev/ sda1 med enhetens navn på partisjonen du vil skrive nuller til. De fleste vil bare ha en /dev/ sda1-enhet til null.

zerofree -v /dev/ sda1

Når nullprosessen er ferdig, kjør følgende kommando for å slå av den virtuelle maskinen:

stopp

Når du ser meldingen "System stanset" på skjermen, har systemet stoppet, og du kan nå stansened din virtuelle maskin. Lukk den virtuelle maskinens vindu og velg "Slå av den virtuelle maskinen".

Trinn tre: Finn VBoxManage-kommandoen

Resten av prosessen vil bli utført utenfor den virtuelle maskinen, på ditt vertsoperativsystem. Hvis du for eksempel har Windows 10 som kjører på din PC og Windows 7, kjører i en virtuell maskin, vil du utføre resten av prosessen på Windows 10.

Dette alternativet er ikke eksponert i VirtualBoxs grafiske grensesnitt. I stedet må du bruke kommandoen VBoxManage.exe.

Finn denne kommandoen for å fortsette. På Windows finner du den i VirtualBox-programkatalogen, som er C: \ Program Files \ Oracle \ VirtualBox som standard. Hvis du installerte VirtualBox til en annen katalog, ser du i stedet.

Åpne et kommandopromptvindu. For å gjøre dette, åpne Start-menyen, skriv cmd og trykk Enter.

Skriv cd i kommandoprompt, etterfulgt av banen til mappen der kommandoen VBoxManage er. Du må legge ved det i anførselstegn.

Du kan raskt gjøre dette ved å skrive inn cd i kommandoprompt-vinduet, og deretter dra og slippe mappikonet fra filbehandlerens adressefelt i kommandoprompt.

Hvis du bruker standard banen, bør den se slik ut:

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

MERK: Disse instruksjonene antar at du bruker VirtualBox på Windows. Hvis du bruker VirtualBox på macOS eller Linux, kan du bare åpne et Terminal-vindu og kjøre kommandoen vboxmanage normalt, som du ville noen annen kommando.

Trinn fire: Finn banen til disken du vil komprimere

Kjør følgende kommando i kommandolinjevinduet for å vise en liste over alle virtuelle harddisker på datamaskinen:

VBoxManage.exe-liste hdds

Se gjennom listen og identifiser filbanen til den virtuelle disken du vil komprimere. La oss si at vi vil endre den virtuelle disken som er knyttet til den virtuelle maskinen som heter "Windows 7".Som vi ser i utgangen nedenfor, er banen til den virtuelle disken på systemet vårt C: \ Users \ chris \ VirtualBox VMs \ Windows 7 \ Windows 7.vdi.

Trinn fem: Komprimer disken

For å komprimere disken, må du bruke VBoxManage.exe med riktig kommando. Bare kjør følgende kommando, erstatte banen til disken VDI-filen med banen til disken på systemet ditt som du fant ved hjelp av kommandoen ovenfor. Pass på å legge inn stien til filen i anførselstegn hvis den inneholder et mellomrom hvor som helst i banen.

Det skal se slik ut:

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

For eksempel, siden banen til filen er C: \ Users \ chris \ VirtualBox VMs \ Windows7 \ Windows 7.vdi i vårt eksempel, kjører vi følgende kommando:

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

VirtualBox vil kompaktedisken og du kan umiddelbart starte opp den virtuelle maskinen etterpå, hvis du vil. Hvor mye plass du ender opp med, avhenger av hvor mye tomt plass det var å gjenopprette.

Også vurdere å slette øyeblikksbilder

VirtualBox lar deg lage øyeblikksbilder for hver virtuell maskin. Disse inneholder et fullstendig bilde av den virtuelle maskinen når du opprettet stillbildet, slik at du kan gjenopprette den til en tidligere tilstand. Disse kan ta mye plass.

For å frigjøre mer plass må du slette øyeblikksbilder du ikke bruker. Hvis du vil vise stillbildene du har lagret for en virtuell maskin, velger du den i hovedvinduet VirtualBox og klikker på "Stillbilder" -knappen til høyre for Detaljer på verktøylinjen. Hvis du ikke lenger trenger et øyeblikksbilde, høyreklikker du det i listen og velger "Slett øyeblikksbilde" for å frigjøre plass.