В основном я использовал образы дисков фиксированного размера для виртуальной коробки Oracle, но я думаю о переходе на образы динамических дисков, поскольку слышал, что динамические образы аналогичны по производительности образам фиксированного размера, за исключением случаев расширения.
Одна операция, которую я часто выполняю, заключается в том, чтобы заполнить образ диска фиксированного размера нулем, прежде чем выполнять его резервное копирование с помощью программы zip (чтобы уменьшить размер архива zip). Мой вопрос: когда я заполню нулями динамический диск, увеличится ли размер диска до его максимального заявленного значения? (В моем конкретном случае я использую sdelete -z
разделы Windows.)
Еще один вопрос: есть ли способ обнуления разделов без увеличения размера диска?
Спасибо.
-- РЕДАКТИРОВАТЬ --
Чтобы уточнить, причина, по которой я спрашиваю, состоит в том, что я хочу сохранить размер сжатых образов виртуальных ящиков на минимальном уровне. Нулевое заполнение изображения фиксированного размера делает работу, так как заполненная нулями часть почти не вносит вклад в сжатое изображение. Однако, если я переключаюсь на динамический диск, заполнение нулями, похоже, лишает цели использования динамически изменяемых изображений.
Вторая часть моего вопроса действительно спрашивает, есть ли лучшая альтернатива, чем заполнение нулями, которая может удалить неиспользуемые сектора без увеличения размера диска.
источник
Ответы:
Я только что протестировал его (используя
sdelete -z
в ВМ), и заполнение диска нулем не приведет к значительному увеличению размера образа динамического диска. Virtualbox достаточно умен, чтобы признать, что когда вы записываете нули в уже пустой блок, на диске не требуется повторная запись блока.Но даже если это произойдет, это не так уж и плохо, потому что заполнение диска нулем также позволит вам снова сжать его с помощью инструментов Virtualbox на вашем хосте: Как уменьшить размер файла VDI VirtualBox?
Когда я заполнил свою виртуальную машину нулем, размер изображения увеличился с ~ 14,5 ГБ до ~ 15,5 ГБ, но не полностью выделил все дисковое пространство, которое было бы приблизительно 48 ГБ.
Фактически нулевое заполнение диска (через
sdelete -z
) позволит вам должным образом освободить любое пространство, которое было записано, но с тех пор было освобождено операционной системой вашей виртуальной машины, затем вы можете запустить командуVBoxManage.exe modifyhd c:\path\to\thedisk.vdi --compact
на хост-машине, чтобы правильно сжать образ динамического диска. вернуться к своему минимальному размеру.источник
sdelete -z
размер динамического диска сильно не увеличивается.