Как да намалите виртуалната машина VirtualBox и освободете дисковото пространство

Съдържание:

Как да намалите виртуалната машина VirtualBox и освободете дисковото пространство
Как да намалите виртуалната машина VirtualBox и освободете дисковото пространство

Видео: Как да намалите виртуалната машина VirtualBox и освободете дисковото пространство

Видео: Как да намалите виртуалната машина VirtualBox и освободете дисковото пространство
Видео: Where to begin when adding texture additives to paint on your furniture. - YouTube 2024, Април
Anonim
По подразбиране VirtualBox създава динамични дискове, които растат с течение на времето, докато добавяте данни. Ако обаче изтриете данни от виртуалната машина по-късно, ще забележите, че дискът не се свива автоматично. Но можете ръчно да намалите динамичния диск, като използвате скрита команда.
По подразбиране VirtualBox създава динамични дискове, които растат с течение на времето, докато добавяте данни. Ако обаче изтриете данни от виртуалната машина по-късно, ще забележите, че дискът не се свива автоматично. Но можете ръчно да намалите динамичния диск, като използвате скрита команда.

Не забравяйте, че това ще свие само диска, ако се разрасне и след това премахнете данните. Така че, ако току-що създадохте динамичен диск, това няма да го свие. Но ако сте създали динамичен диск, сте изтеглили 10 ГБ от данни в него и след това сте изтрили 10 ГБ данни след това, трябва да сте в състояние да свиете диска с около 10 ГБ.

Първа стъпка: Уверете се, че използвате динамичен диск

Този процес работи само за динамични дискове, които могат да растат и да се свиват по размер. Динамичните дискове може да са до определен максимален размер - например 50 GB, но те действително достигат максималния размер, когато съдържат толкова много данни. Дисковете с фиксиран размер винаги ще са максималният им размер.

Ако имате диск с фиксиран размер, който искате да намалите, първо го преобразувайте в динамичен диск и след това следвайте инструкциите по-долу. Например, ако имате фиксиран диск с размер от 50 ГБ с едва 20 ГБ данни и го преобразувате в динамичен диск, трябва да сте в състояние да го свиете, за да заемате само 20 ГБ пространство.

За да проверите дали диск е динамичен или фиксиран размер в VirtualBox, щракнете с десния бутон на мишката върху виртуалната машина, която използва диска, и изберете "Настройки". Кликнете върху раздела "Съхранение" и изберете диска. Ще видите какъв диск се показва до "Подробности". Например в екранната снимка по-долу "Динамично разпределено хранилище" показва, че това е динамичен диск.

Image
Image

Стъпка втора: Напишете нули на диска във виртуалната машина

Не забравяйте да изтриете всички данни, които вече не искате на диска във виртуалната машина, за да освободите място, преди да продължите. Изтрийте файловете, които не са ви необходими, деинсталирайте програмите, които вече не използвате, и изпразнете Кошчето. След това ще трябва да презапишете това празно пространство с нули.

За Windows Операционни системи за гости

Ако имате Windows инсталиран във виртуалната машина, сега трябва да заредите виртуалния компютър и да дефрагментирате дисковете му. Във виртуалната машина потърсете менюто "Старт" за "Дефрагментиране" и стартирайте инструмента "Дефрагментиране на диска" или "Дефрагментиране и оптимизиране на устройства". Изберете диска, който искате да компактирате, и кликнете върху "Дефрагментиране на диска".

След като завърши процесът на дефрагментиране, ще трябва да напишете нули в празното пространство във виртуалната машина. Когато изтриете файлове, изтритите данни все още се съхраняват на диска, така че VirtualBox не може автоматично да свие устройството. Но когато пишете нули над изтритите файлове, VirtualBox ще види голямо количество нули - празно пространство, с други думи - и ще може да компактира диска.
След като завърши процесът на дефрагментиране, ще трябва да напишете нули в празното пространство във виртуалната машина. Когато изтриете файлове, изтритите данни все още се съхраняват на диска, така че VirtualBox не може автоматично да свие устройството. Но когато пишете нули над изтритите файлове, VirtualBox ще види голямо количество нули - празно пространство, с други думи - и ще може да компактира диска.

За да направите това, изтеглете помощната програма SDelete от Microsoft. Извадете

sdelete.exe

файл в папка на компютъра си.

Отворете прозореца на командния прозорец. За да направите това, отворете менюто "Старт", потърсете "Команден ред" и стартирайте прекия път.
Отворете прозореца на командния прозорец. За да направите това, отворете менюто "Старт", потърсете "Команден ред" и стартирайте прекия път.
Промяна в директорията, съдържаща
Промяна в директорията, съдържаща

sdelete.exe

файл чрез въвеждане

cd

като натиснете Спейс, като въведете пътя към указателя и натиснете Enter. Уверете се, че сте включили пътя в кавички, ако съдържат знак за интервал. Трябва да изглежда така:

cd 'C:path ofolder'

Например, ако сте извадили

sdelete.exe

файл в папката за изтегляне на потребителския си акаунт и потребителското ви име за Windows е Bob, щяхте да изпълните следната команда:

cd 'C:UsersobDownloads'

За да попълните бързо пътя за директорията, просто въведете

cd

в прозореца на командния ред, натиснете Space и след това плъзнете и пуснете иконата на папката от адресната лента на мениджъра на файлове.

Изпълнете следната команда:
Изпълнете следната команда:

sdelete.exe c: -z

Това ще напише нули на цялото свободно дисково пространство на устройство C:. Ако искате да свиете вторично устройство, разположено с различна буквата на устройството във виртуалната машина, въведете буквата на устройството вместо c:. Това е предназначението на инструмента. Както отбелязва страницата на SDelete на уеб сайта на Microsoft, опцията -z е "добра за оптимизиране на виртуални дискове".

Ще бъдете помолени да приемете лицензионното споразумение на инструмента, преди да продължите. Просто кликнете върху "Съгласен съм".

Изчакайте процесът да завърши. Когато това стане, изключете виртуалната машина чрез опцията "Изключване" в менюто "Старт". Вече сте готови да го компактирате.
Изчакайте процесът да завърши. Когато това стане, изключете виртуалната машина чрез опцията "Изключване" в менюто "Старт". Вече сте готови да го компактирате.
Image
Image

За Linux Операционни системи за гости

Ако имате инсталиран Linux във виртуалната машина - операционна система за гости на Linux вместо операционна система за гости на Windows, с други думи - можете да пропуснете процеса на дефрагментиране и да използвате вградените команди, за да нулирате свободното място на устройството. Ще използваме Ubuntu като пример тук, но процесът ще бъде подобен на други дистрибуции на Linux.

За да направите това, първо трябва да инсталирате

zerofree

полезност във виртуалната машина. Той трябва да е наличен в софтуерните хранилища на Linux. Например, можете да го инсталирате в Ubuntu, като изпълните следната команда в терминала във вашата виртуална машина:

sudo apt install zerofree

Всъщност не можете да използвате
Всъщност не можете да използвате

zerofree

на вашия / дял, докато сте заредили в стандартната Linux среда.Вместо това, ще искате да заредите в специален режим за възстановяване, където нормалният ви корен дял не е монтиран. В Ubuntu рестартирайте виртуалната машина и многократно натискайте клавиша "Esc", докато зареждате, за да влезете в менюто на Grub. Когато се покаже менюто Grub, изберете "* Разширени опции за Ubuntu" и натиснете Enter.

Изберете опцията "(възстановяване)", свързана с най-новото ядро на Linux - това е опцията с най-високия номер на версията в горната част на списъка и натиснете Enter.
Изберете опцията "(възстановяване)", свързана с най-новото ядро на Linux - това е опцията с най-високия номер на версията в горната част на списъка и натиснете Enter.
Изберете "root" в менюто за възстановяване, за да стартирате командата за root команда.
Изберете "root" в менюто за възстановяване, за да стартирате командата за root команда.
Натиснете "Enter" след това, когато на екрана се появи "Натиснете Enter за поддръжка". Ще ви бъде даден терминален подкана.
Натиснете "Enter" след това, когато на екрана се появи "Натиснете Enter за поддръжка". Ще ви бъде даден терминален подкана.
В командния ред определете кой виртуален диск искате да нулирате, като изпълните следната команда:
В командния ред определете кой виртуален диск искате да нулирате, като изпълните следната команда:

df

В изхода по-долу виждаме това

/dev/sda1

е единственото ни действително дисково устройство тук. Знаем това, защото е единственият диск

/dev/

в лявата колона.

Ако приемем, че виртуалната ви машина е създадена с настройките по подразбиране, тя ще има само

/dev/sda1

който е първият дял на първия твърд диск. Ако сте задали различни неща с няколко диска или няколко дяла, може да се наложи да нулирате друг дял или да нулирате няколко дяла.

Вече сте готови да нулирате диска. Изпълнете следната команда, заменете я
Вече сте готови да нулирате диска. Изпълнете следната команда, заменете я

/dev/sda1

с името на устройството на дяла, на който искате да пишете нули. Повечето хора просто ще имат

/dev/sda1

устройството е нула.

zerofree -v /dev/sda1

Когато процесът на нула завърши, изпълнете следната команда, за да изключите виртуалната машина:
Когато процесът на нула завърши, изпълнете следната команда, за да изключите виртуалната машина:

halt

Когато видите на екрана си съобщение "Система спряно", системата е спряна и вече можете да изключите виртуалната машина. Затворете прозореца на виртуалната машина и изберете "Изключете виртуалната машина".
Когато видите на екрана си съобщение "Система спряно", системата е спряна и вече можете да изключите виртуалната машина. Затворете прозореца на виртуалната машина и изберете "Изключете виртуалната машина".
Image
Image

Стъпка трета: Намерете командата VBoxManage

Останалата част от процеса ще бъде извършена извън виртуалната машина на операционната система на хоста ви. Например, ако имате Windows 10, работещ на вашия компютър и Windows 7, изпълняващ се във виртуална машина, бихте изпълнили останалата част от процеса в Windows 10.

Тази опция не е изложена в графичния интерфейс на VirtualBox. Вместо това трябва да използвате

VBoxManage.exe

команда.

Намерете тази команда, за да продължите. В Windows, ще го намерите в директорията на програмата VirtualBox, която е

C:Program FilesOracleVirtualBox

по подразбиране. Ако сте инсталирали VirtualBox в друга директория, погледнете там.

Отворете прозореца на командния прозорец. За да направите това, отворете менюто "Старт", въведете
Отворете прозореца на командния прозорец. За да направите това, отворете менюто "Старт", въведете

cmd

и натиснете Enter.

Тип
Тип

cd

в командния ред, последван от пътя на папката, където е командата VBoxManage. Ще трябва да го прикрепите в кавички.

Можете бързо да направите това като напишете

cd

в прозореца на командния прозорец и след това плъзнете и пуснете иконата на папката от адресната лента на мениджъра на файлове в командния ред.

Image
Image

Ако използвате пътя по подразбиране, той трябва да изглежда по следния начин:

cd 'C:Program FilesOracleVirtualBox'

ЗАБЕЛЕЖКА: Тези указания предполагат, че използвате VirtualBox в Windows. Ако използвате VirtualBox на MacOS или Linux, можете просто да отворите терминален прозорец и да го изпълните
ЗАБЕЛЕЖКА: Тези указания предполагат, че използвате VirtualBox в Windows. Ако използвате VirtualBox на MacOS или Linux, можете просто да отворите терминален прозорец и да го изпълните

vboxmanage

команда нормално, както бихте направили всяка друга команда.

Image
Image

Стъпка четири: Намерете пътя на диска, който искате да компресирате

Стартирайте следната команда в прозореца на командния ред, за да видите списък с всички виртуални твърди дискове на компютъра:

VBoxManage.exe list hdds

Разгледайте списъка и идентифицирайте файловия път към виртуалния диск, който искате да компресирате. Да приемем, че искаме да променим виртуалния диск, свързан с виртуалната машина, наречена "Windows 7". Както можем да видим в изхода по-долу, пътят към този виртуален диск в нашата система е
Разгледайте списъка и идентифицирайте файловия път към виртуалния диск, който искате да компресирате. Да приемем, че искаме да променим виртуалния диск, свързан с виртуалната машина, наречена "Windows 7". Както можем да видим в изхода по-долу, пътят към този виртуален диск в нашата система е

C:UserschrisVirtualBox VMsWindows 7Windows 7.vdi

Image
Image

Стъпка пета: Компакт диска

За да компактирате диска, трябва да го използвате

VBoxManage.exe

със съответната команда. Просто изпълнете следната команда, замествайки пътя към диска на VDI файла с пътя към диска на вашата система, който открихте, като използвате горната команда. Уверете се, че сте включили пътя на файла в кавички, ако той съдържа интервал някъде по пътя му.

Трябва да изглежда така:

VBoxManage.exe modifymedium disk 'C:path odisk.vdi' --compact

Например, тъй като пътят до файла е

C:UserschrisVirtualBox VMsWindows 7Windows 7.vdi

в нашия пример ще изпълним следната команда:

VBoxManage.exe modifymedium disk 'C:UserschrisVirtualBox VMsWindows 7Windows 7.vdi' --compact

VirtualBox ще компактира диска и след това можете да заредите виртуалната машина веднага, ако искате. Колко място ще спестите, зависи от това колко празно пространство трябва да се възстанови.
VirtualBox ще компактира диска и след това можете да заредите виртуалната машина веднага, ако искате. Колко място ще спестите, зависи от това колко празно пространство трябва да се възстанови.

Също така помислете за изтриване на моментни снимки

VirtualBox ви позволява да създавате снимки за всяка виртуална машина. Те съдържат цялостно изображение на виртуалната машина, когато създадете моментната снимка, което ви позволява да я възстановите в предишно състояние. Това може да отнеме много място.

За да освободите повече място, изтрийте снимките, които не използвате. За да видите снимките, които сте запаметили за виртуална машина, я изберете в основния прозорец на VirtualBox и кликнете върху бутона "Снимки" отдясно на Подробности в лентата с инструменти. Ако вече нямате нужда от снимка, щракнете с десния бутон на мишката върху нея в списъка и изберете "Delete Snapshot", за да освободите място.

Препоръчано: