я использую Hyper-V в Windows 8, с несколькими виртуальными машинами, такими как XP, Ubuntu и т. д. Я установил жесткий диск по требованию, поэтому он начинается с малого.

Теперь я скачал несколько файлов на моем Virtual XP, я заметил, что пространство на жестком диске составляет около 12 ГБ, поэтому я решил удалить некоторые файлы, после удаления даже из корзины, жесткий диск теперь составляет около 6 ГБ, но проблема в том, когда я проверил размер чтения VHDX, он все еще около 12 ГБ !!

я попытался выключить и отредактировать / сжать жесткий диск, но он все еще тот же самый размер !!

любая помощь приветствуется.

Благодарю.

3 ответа3

1

Удаление больших файлов изменяет только крошечные части (виртуального) жесткого диска: распределение блоков. Данные содержимого файла остаются на диске до тех пор, пока не будут перезаписаны. Гипервизор / образ диска не работает на уровне файловой системы. Вы должны перезаписать данные нулями, чтобы сжатие было успешным. В Linux (и файловой системе, которая по-прежнему позволяет удалять файлы, когда она полностью заполнена (в этой ситуации btrfs имеет проблемы)), вы можете сделать это:

dd if=/dev/zero of=/filldisk.zero bs=100M ; rm /filldisk.zero

В будущем вы можете удалить файлы на виртуальной машине с помощью wipe -z . Вероятно, есть инструмент Windows, чтобы сделать то же самое.

0

Вы можете сжать VHD с SystemRescueCD

https://serverfault.com/questions/551053/how-can-i-compact-the-vhd-file-with-ubuntu - это ответ на этот вопрос

0

Hyper-V будет сжимать VHD (или VHDX) всякий раз, когда выполняется одно из двух условий:

1) Он может монтировать виртуальный жесткий диск и базовую файловую систему и использовать данные из файловой системы, чтобы выяснить, какие блоки в виртуальном жестком диске больше не используются файловой системой.

2) ОС в гостевой системе использует команду "trim" ATA или команду "unmap" SCSI, чтобы указать базовому диску, что блокируются, и данные внутри них больше не представляют интереса.

(1) не сработает, если файловая система не будет хорошо известна Windows, и я подозреваю, что, хотя вы не упоминаете об этом, вы не использовали NTFS в вашей установке Ubuntu. Для виртуальной машины Windows XP это могло бы помочь сначала выполнить дефрагментацию в операционной системе XP (что могло бы сделать виртуальный жесткий диск еще больше в процессе), а затем сжать ее с отключенной виртуальной машиной.

(2) работает только с самыми последними версиями Windows. Возможно, вам удастся найти версии или патчи Ubuntu, которые поддерживают обрезку и / или удаление карты.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .