Я использую VMWare Fusion на своем Mac для запуска виртуальной машины Windows 7, а также виртуальные машины Windows XP, совместимые с Microsoft IE.
В VMWare Tools для гостевых ОС Windows есть опция «Сжать», которая позволяет уменьшить размер разреженного образа диска, используемого гостевой ОС, чтобы сэкономить место на жестком диске хостовой ОС.
Недавно я создал еще одну виртуальную машину, на этот раз на Snow Leopard Server. Мне было интересно, смогу ли я сжать образ запасного диска, используемый этой машиной, но я не могу найти приложение VMWare Tools в гостевой ОС Mac, хотя VMWare Tools были установлены (так как функция VMWare Shared Folders работает).
Есть ли способ сжать разреженный образ диска, используемый гостевыми ОС Mac OS X в VMWare Fusion?
решение1
В VMware Fusion начиная с версии 4 можно перейти в раздел Настройки виртуальной машины -> Общие -> Очистить виртуальную машину.
Кроме того, имеется таблица, где вы можете увидеть, какой размер ожидается после усадки.
решение2
Ага — действительно, можно, согласноэта тема на форумах VMWare по этой проблеме, предполагая:
- Файл представляет собой разреженный образ диска, не выделенный заранее.
- У виртуальной машины нет моментальных снимков.
Суммируя:
Очистить свободное место на диске гостевой ОСиз гостевой ОСс помощью Disk Utility, затем сожмите диск гостевой ОСиз хостовой ОСиспользование vmware-vdiskmanager
в командной строке.
В длинном варианте:
В гостевой ОС:
- Откройте Дисковую утилиту.
- Выберите раздел гостевой ОС.
- Перейдите на вкладку «Стереть».
- Нажмите кнопку «Очистить свободное место».
- Убедитесь, что выбран пункт «Обнулить удаленные файлы», и очистите свободное пространство.
- После завершения закройте Дисковую утилиту и выключите гостевую ОС.
Или в терминале гостевой ОС, когда раздел называется «Macintosh HD»:
diskutil secureErase freespace 0 Macintosh\ HD
sudo halt
В хостовой ОС:
Откройте Терминал и введите:
[ -d "/Library/Application Support/VMware\ Fusion" ] && alias vmware-vdiskmanager="/Library/Application Support/VMware Fusion/vmware-vdiskmanager" || alias vmware-vdiskmanager="/Applications/VMware\ Fusion.app/Contents/Library/vmware-vdiskmanager"; vmware-diskmanager -k
Введите «пробел», а затем путь к файлу виртуального диска вашей виртуальной машины.
Нажмите «Ввод».
Файл виртуального диска гостевой ОС находится в файле ее виртуальной машины. Например, если файл вашей виртуальной машины находится в /Users/you/VM
, путь к ее виртуальному диску будет /Users/you/VM.vmwarevm/VM.vmdk
.
Кстати, это уменьшило размер моей виртуальной машины Snow Leopard с 15 ГБ до 6 ГБ.
решение3
Они добавили очень простую опцию CLI — сделать это можно прямо из гостевой ОС:
sudo /Library/Application\ Support/VMware\ Tools/vmware-tools-cli disk shrink /
От мудальцова наФорумы сообщества VMware:
Немного более простой метод — функция сжатия встроена в утилиту командной строки VMware Tools:
sudo /Library/Application\ Support/VMware\ Tools/vmware-tools-cli disk shrink /
Это сначала очистит пустое пространство в файловой системе (так же, как и создание файла, заполненного нулями) и покажет прогресс в гостевом терминале. Когда это будет сделано, сжатие VMDK будет вызвано без выключения виртуальной машины и отобразится в виде полосы прогресса над окном виртуальной машины.
/ — это путь к файловой системе, на которой нужно стереть пустое пространство. Если у вас несколько разделов, вы можете стереть их по отдельности и сделать окончательное сжатие в конце:
vmware-tools-cli disk list
чтобы увидеть доступные места для стиранияvmware-tools-cli disk wipe <location>
стереть каждое местоположение (повторить несколько раз), без операции сжатияvmware-tools-cli disk shrinkonly
для выполнения окончательной операции усадки.
Это также объясняется на справочном диске vmware-tools-cli
решение4
Откройте терминал и запустите
sudo diskutil secureErase freespace 0 Macintosh
(Убедитесь, что вы заменили Macintosh на фактическое имя раздела вашего жесткого диска, его можно найти в Disk Utility. Если оно неверно, вы получите ошибку «Macintosh HD not found»)
Подождите, пока команда завершит обработку. Вы также можете получить какую-либо ошибку от VMware, просто нажмите «Продолжить» и проигнорируйте ее.
Когда-то сделали,Неисправностьваша виртуальная машина Mac OS
На вашем основном ПК откройтеКомандная строкас повышенными (административными) привилегиями и запустить
"\vmware-path\vmware-vdiskmanager.exe" -k "\vm-path\VM-name.vmdk"
ПРИМЕЧАНИЕ: vmware-vdiskmanager.exeне входит вVMware-плеерверсию, которую вы можете скачать сhttps://code.vmware.com/web/sdk/60/vddkиизвлеките загруженный комплект разработчикапапку и вы можете найти vmware-vdiskmanager.exe в папке /bin. Теперь для пункта 3 вам нужно будет использовать этот путь для раздела vmware-vdiskmanager.exe.
После выполнения вышеуказанных шагов вы можете на своей виртуальной машине. Первая загрузка может занять больше времени, чем обычно.