Какие форматы виртуальной машины virtualbox форматы образов дисков предусмотрены чем они отличаются

Обновлено: 06.07.2024

Последние версии VirtualBox поддерживают несколько форматов для виртуальных дисков, но они забыли провести сравнение между ними.

Теперь меня интересует рекомендация или сравнение, которая учитывает следующее:

  • иметь возможность использовать динамический размер
  • иметь возможность делать снимки
  • Можете перенести мою виртуальную машину на другую ОС или даже еще одно бесплатное решение для виртуализации с минимальными усилиями (возможно, что-то, что будет нормально работать на Ubuntu).
  • производительности

Отвечая на ваши вопросы

  • иметь возможность использовать динамический размер

VDI , VMDK и VHD поддерживают динамически распределенный размер. VMDK имеет дополнительную возможность разбивать файл хранилища на файлы размером менее 2 ГБ каждый, что полезно, если ваша файловая система имеет небольшой размер файла.

Все четыре формата поддерживают моментальные снимки в VirtualBox.

  • Можете перенести мою виртуальную машину на другую ОС или даже еще одно бесплатное решение для виртуализации с минимальными усилиями (возможно, что-то, что будет нормально работать на Ubuntu).

VDI - это собственный формат VirtualBox. Я не искал другого программного обеспечения, поддерживающего этот формат.

VHD - это собственный формат Microsoft Virtual PC. Это формат, который популярен среди продуктов Microsoft.

Я ничего не знаю о HDD. Судя по просмотру этого сайта , Parallels является продуктом Mac OS X и, вероятно, не подходит для вас, особенно учитывая, что VirtualBox поддерживает только старую версию формата жесткого диска.

Формат не должен влиять на производительность, или, по крайней мере, влияние производительности незначительно.

Факторы, влияющие на производительность:

  • ограничения вашего физического устройства (гораздо более заметные на жестком диске, чем твердотельный диск . Почему )
  • расширение динамически распределенного виртуального диска (операции записи медленнее по мере расширения виртуального диска, но если он достаточно велик, расширение должно происходить меньше)
  • технология виртуализации ( аппаратное и программное обеспечение ; аппаратная виртуализация помогает VirtualBox и улучшает скорость виртуальных операционных систем)
  • факт, что вы используете виртуальную операционную систему. Производительность всегда медленнее, чем запуск операционной системы на хосте из-за процесса виртуализации.

Я всегда использую VDI, так как это собственный формат VirtualBox; однако использование VMDK (формат VMWare) повысит совместимость с другим программным обеспечением для виртуальных машин.

VirtualBox будет работать нормально на Ubuntu, поэтому, если целью является совместимость Windows /Ubuntu, VDI будет совершенно правильным выбором.

Оба формата будут соответствовать вашим требованиям.

Что касается двух других, VHD - это разработанный Microsoft формат, а жесткий диск - разработанный Apple формат; они лицензированы как собственными силами, поэтому ограничивают межплатформенную поддержку; Я бы не рекомендовал их.

Mpack, объясняет ключевую разницу в производительности между VHD и VDI здесь:

Недавно изучив формат VHD, я ожидал бы, по крайней мере, небольшой разницы в преимуществах VDI, наиболее заметных, когда вы сравниваете, как с подобным, т. е. оптимизированный VDI с оптимизированным VHD. Причина в том, что динамический формат VHD имеет эти «растровые» сектора, разбросанные по всему диску. Каждый раз, когда вы изменяете сектор внутри блока, эти растровые блоки могут нуждаться в обновлении и написании, включая дополнительные искажения, чтения и записи. Эти растровые сектора также должны быть пропущены при чтении последовательных кластеров из образа диска - больше запросов. Формат VDI не имеет этих накладных расходов, особенно если VDI был оптимизирован (блоки на виртуальном диске отсортированы в порядке LBA).

Все мои комментарии относятся к динамическому формату VHD и динамическому VDI. Тесты производительности на виртуальных дисках с фиксированным размером бессмысленны, поскольку оба формата являются то же самое (просто образ диска), у них просто разные заголовки.

Я не знаю, может ли использование vmdk разрешить вам прозрачную работу виртуальной машины, созданной в VirtualBox в VMware, или нет. Возможно. Однако более универсальным вариантом может быть использование функции VirtualBox File /Export для создания файла «Open Virtualization Appliance» .ova, который затем можно импортировать в VMware. С помощью этого подхода вы можете подключиться к любой системе виртуализации, которая поддерживает .ova, не заботясь о том, какой формат образа диска вы используете в VirtualBox.

Если вам нужно экспортировать из той же виртуальной машины через определенные промежутки времени, например, каждый день, это может быть болью. Но если вы иногда переходите к другой технологии, это должно быть хорошо.

Если у вас уже есть файл .vdi, вы можете проверить, работает ли это без создания новой виртуальной машины. Экспортируйте его в .ova, затем попробуйте импортировать с помощью vmware.

Файлы образа диска находятся на хост-системе и видны гостевыми системами как жесткие диски определенной геометрии. Когда гостевая операционная система считывает или записывает на жесткий диск, VirtualBox перенаправляет запрос в файл изображения.

Как и физический диск, виртуальный диск имеет размер (емкость), который должен быть указан при создании файла образа. Однако, в отличие от физического диска, VirtualBox позволяет вам развернуть файл образа после создания, даже если он уже имеет данные; VirtualBox поддерживает четыре варианта файлов образа диска:

VDI: Обычно VirtualBox использует собственный формат контейнера для гостевых жестких дисков - файлов виртуального диска (VDI). В частности, этот формат будет использоваться при создании новой виртуальной машины с новым диском.

VMDK: VirtualBox также полностью поддерживает популярный и открытый формат контейнера VMDK, который используется многими другими продуктами виртуализации, в частности, VMware. [25]

VHD: VirtualBox также полностью поддерживает формат VHD, используемый Microsoft.

Также поддерживаются файлы изображений Parallels версии 2 (формат HDD). [26] Из-за отсутствия документации формата более новые форматы (3 и 4) не поддерживаются. Однако вы можете преобразовать такие файлы изображений в формат версии 2 с помощью инструментов, предоставляемых Parallels.

Хорошей причиной для использования vmdk является то, что Virtualbox (по крайней мере до версии 4.1) с использованием формата VDI имеет тенденцию со временем заполнять полное выделенное дисковое пространство, хотя использование внутреннего виртуального диска по-прежнему много Меньше. С Virtualbox с использованием дисков vmdk это кажется менее проблематичным.

Но я говорю о продолжительности работы. Это может быть не проблема, с которой многие сталкиваются.

Это зависит от того, как вы планируете использовать виртуальный диск. Не каждая виртуальная машина хочет, чтобы на одном диске был один раздел.

У VDI, похоже, больше возможностей (при использовании с VirtualBox), но как только вы выберете VirtualBox из картинки, поддержка VDI становится несколько шаткой (по состоянию на конец 2014 года).

Например, мои решения должны иметь максимальную межплатформенную поддержку. Установка VDI (например, loopback-устройства) на Linux или Windows 7 сложнее и сложнее, чем вы могли ожидать. Почти как у VDI слишком много функций, что затрудняет создание полностью соответствующих утилит, которые могут работать на нем.

VMDK является менее безболезненным IMHO, когда вы хотите, чтобы он работал с любой виртуальной машиной на любой рабочей станции, когда вы хотите клонировать ее 3 раза в другие системы в сети одновременно, и когда вы хотите открыть ее без запуск экземпляра виртуальной машины.

Несмотря на то, что я использую VirtualBox в 90% случаев, те несколько раз, когда мои диски становятся недоступными в определенных рабочих процессах, я помог VMDK для подключаемых /разделяемых файловых систем.

Похоже, что использование VDI позволяет обрезать файл диска до его фактического размера Поддержка команд TRIM VirtualBox и SSD

VDI намного проще сжимать, если VM становится слишком большим.

$ sudo hdparm -tT --direct /dev /sda /DEV /SDA: Сроки O_DIRECT кэшированные чтения: 1024 МБ в 2,00 секунды = 511,61 МБ /с <====== Сроки O_DIRECT-диск: 1134 МБ в 3,00 секунды = 377,88 МБ /с <====== user @ xeon:

$ sudo hdparm -tT /dev /sda /DEV /SDA: Сроки чтения в кэше: 21182 МБ в 2,00 секунды = 10603,52 МБ /с Буферный диск с синхронизацией: 1060 МБ в 3,00 секунды = 352,91 МБ /с user @ xeon:

$ sudo hdparm -tT --direct /dev /sda /DEV /SDA: Сроки O_DIRECT кэшированные чтения: 1042 МБ в 2,00 секунды = 520,82 МБ /с <====== Сроки O_DIRECT-диск читает: 1162 МБ в 3,00 секунды = 387,27 МБ /с <====== ================================================== ==================================== V M D K --- на Samsung Pro 850 515GB ================================================== ==================================== Системная информация от Чт Сен 21 16:58:12 CEST 2017 user @ xeon:

$ sudo hdparm -tT --direct /dev /sda /DEV /SDA: Сроки O_DIRECT кэшированные чтения: 826 МБ в 2,00 секунды = 412,75 МБ /с <====== Сроки: O_DIRECT-диск: 774 МБ в 3,00 секунды = 257,79 МБ /с <====== user @ xeon:

$ sudo hdparm -tT /dev /sda /DEV /SDA: Сроки чтения в кэше: 22082 МБ в 2,00 секунды = 11055,78 МБ /с Буферный диск с синхронизацией: 788 МБ в 3,01 секунды = 262.11 МБ /с user @ xeon:

$ sudo hdparm -tT --direct /dev /sda /DEV /SDA: Сроки O_DIRECT кэшированные чтения: 828 МБ в 2,00 секунды = 413,88 МБ /с <====== Сроки O_DIRECT-диск: 774 МБ в 3,00 секунды = 257,83 МБ /с <====== ================================================== ==================================== V D I --- на Samsung Pro 850 515GB ================================================== ==================================== Системная информация от Чт Сен 21 16:55:24 CEST 2017 user @ xeon:

$ sudo hdparm -tT /dev /sda /DEV /SDA: Сроки чтения в кэше: 21468 МБ в 2,00 секунды = 10747,37 МБ /с Буферный диск с синхронизацией: 662 МБ в 3,01 секунды = 220,12 МБ /с user @ xeon:

$ sudo hdparm -tT --direct /dev /sda /DEV /SDA: Сроки O_DIRECT кэшированные чтения: 470 МБ в 2,01 секунды = 234,21 МБ /с <====== Сроки O_DIRECT-диск читает: 766 МБ за 3,00 секунды = 254,94 МБ /с <====== user @ xeon:

$ sudo hdparm -tT --direct /dev /sda /DEV /SDA: Сроки чтения O_DIRECT: 494 МБ в 2,00 секунды = 246,45 МБ /с <====== Сроки O_DIRECT-диск: 754 МБ в 3,00 секунды = 250,92 МБ /с <====== user @ xeon:

$ sudo hdparm -tT /dev /sda /DEV /SDA: Сроки чтения в кэше: 20872 МБ в 2,00 секунды = 10448,98 МБ /с Считывание по времени буферизированного диска: 694 МБ в 3,01 секунды = 230,78 МБ /с user @ xeon:

$ sudo hdparm -tT --direct /dev /sda /DEV /SDA: Сроки O_DIRECT кэшированные чтения: 490 МБ в 2,00 секунды = 244,46 МБ /с <====== Сроки O_DIRECT-диск читает: 764 МБ в 3,01 секунды = 254,03 МБ /с <====== ================================================== ==================================== V M D K --- на Samsung Pro 850 515GB ================================================== ==================================== Системная информация от Чт Сен 21 16:52:32 CEST 2017 user @ xeon:

$ sudo hdparm -tT /dev /sda /DEV /SDA: Сроки чтения в кэше: 20872 МБ в 2,00 секунды = 10448.90 МБ /с Буферный диск с синхронизацией: 764 МБ в 3,01 секунды = 254,11 МБ /с user @ xeon:

$ sudo hdparm -tT --direct /dev /sda /DEV /SDA: Сроки O_DIRECT кэшированные чтения: 842 МБ в 2,00 секунды = 420,76 МБ /с <====== Сроки чтения диска O_DIRECT: 770 МБ в 3,00 секунды = 256,56 МБ /с <====== ================================================== ==================================== V M D K --- R A W . --- на Transcend SSD370 128 ГБ ================================================== ==================================== Системная информация от Чт Сен 21 16:29:55 CEST 2017 user @ xeon:

$ sudo hdparm -tT /dev /sda /DEV /SDA: Сроки чтения в кеше: 22034 МБ в 2,00 секунды = 11029,82 МБ /с Буферный диск с синхронизацией: 990 МБ в 3,00 секунды = 329,68 МБ /с user @ xeon:

$ sudo hdparm -tT --direct /dev /sda /DEV /SDA: Сроки O_DIRECT кэшированные чтения: 816 МБ в 2,00 секунды = 407,55 МБ /с <====== Время чтения диска O_DIRECT: 1020 МБ в 3,01 секунды = 339,43 МБ /с <======

Я не знаю, как это интерпретировать, может быть, кто-то хочет оставить комментарий к нему. Затем я выбрал VMDK.

Долгое время я делал один тест, конвертировал динамический vdi в динамический vhd только для проверки скорости и размеров файлов.

Помните, что это была неуязвимая гостевая ОС Windows, устанавливающая с некоторыми приложениями, помните, что для моего теста я конвертирую один формат в другой, поэтому оба они имеют то же самое изображение, что и клонирование.

Для размера диска 64GiB размер файла VDI был около 18GiB, а размер файла VHD arround 22GiB.

Я помню, я видел эти две вещи:

  1. Время загрузки существенно отличалось, если я не помню, что плохой vhd был в 1,6 раза быстрее, чем VDI
  2. Размер VHD был намного больше, чем VDI, arround 4GiB гигабайт больше по сравнению с 18GiB, поэтому в 1,2 раза больше.

Это было давно, и тестирование было выполнено на жестком диске, но я гарантирую обе файлы, где дефрагментированы и рядом друг с другом на быстрой части диска.

Надеюсь, что кто-то сможет провести настоящие тесты SSD, но я чувствую, что VHD быстрее (и больше), чем VDI.

Просто совет: VHD /VHDX можно сжать на любом Windows 7 и Up с помощью инструмента командной строки DiskPart, для VDI необходим внешний инструмент CloneVDI.

Извините, я не тестировал VMDK, я не знал, как сжать его, не изменяя его UUID (диск UUID), помните, что инструменты VBOX всегда меняют его на каждом клоне, независимо от того, какой формат вы используете.

image

Статья рассматривает особенности использования виртуальных дисков в VirtualBox, применение разных режимов чтения-записи, принцип и организацию работы snapshot-ов, кэширование ввода/вывода данных, а также некоторые аспекты использования виртуальных дисков с точки зрения информационной безопасности. Для тех, кому интересен пример с безопасностью, можете сразу переходить по якорю к разделу об особых режимах записи.

Начнем с некоторых общих понятий. У VirtualBox существуют 3 основных метода предоставления гостевой операционной системе (ОС) доступа к данным. Сей текст концентрируется на использовании виртуальных дисков.

Виртуальные диски подключаются к виртуальной — гостевой ОС, методом эмуляции подключения через соответствующий контроллер, IDE, SATA (AHCI), SCSI, SAS.

Поведение контроллеров запрограммировано таким образом, чтобы имитировать физические прототипы, следовательно IDE контроллер будет работать медленнее SATA и потреблять больше ресурсов процессора, ОС без соответствующих драйверов и аппаратной поддержки не будут взаимодействовать с виртуальными дисками и т.д. Например, в семействе Windows до Windows Vista нет поддержки Advanced Host Controller Interface (AHCI), к которому относится SATA, поэтому в частности, виртуальная машина с ОС Windows XP с SATA работать не будет.

Файлы виртуальных дисков

VirtualBox позволяет работать с разными форматами файлов виртуальных дисков. Помимо собственного VDI, поддерживаются VMDK (VMware), VHD (Microsoft), Parallels version 2 HDD format (Parallels).

Каждому виртуальному диску присваивается уникальный идентификатор UUID, это помогает VirtualBox удостовериться, что каждый диск используется только один раз и не позволяет импортировать в гостевую ОС обычные копии дисков (для этого существует отдельная процедура клонирования).

Виртуальные диски могут быть, как фиксированного размера, так и динамически выделяемого, причем VirtualBox позволяет увеличить размер дискового пространства, независимо от объёма и формата диска и даже в том случае, если диск содержит данные. Ниже пример, как это сделать с помощью утилиты vboxmanage.


При выборе динамически выделяемого образа, файл контейнера будет «разрастаться» постепенно, по мере заполнения секторов данными, до тех пор, пока размер контейнера не достигнет указанного при создании виртуальной машины лимита.

Учитывая то, что в процессе регулярного увеличения размера контейнера задействуются дополнительные вычислительные ресурсы, скорость записи при использовании опции с фиксированным размером, как правило выше, в с равнении с динамическим диском. Тем не менее, если размер динамического диска в долгосрочной перспективе значительно не увеличивается, то разница в скорости записи практически нивелируется.

Управление виртуальными медиа (Virtual Media Manager)

VirtualBox ведет реестр всех виртуальных медиа носителей, которые используются всеми гостевыми ОС. Это так называемые ”known media”, доступ к списку (реестру) которых можно получить используя утилиту Virtual Media Manager (доступно из меню File). Эта утилита показывает детальную информацию о каждом виртуальном диске, включая полный путь к файлу, а также к какой именно виртуальной машине файл прикреплен. Информацию из реестра можно удалить используя встроенную функцию удаления “Remove”

Virtual Media Manager

Каждый отдельно взятый образ можно «открепить» от виртуальной машины за которой он закреплен, используя функцию ”Release”

Открепив образ, прикрепить его обратно нажатием одной кнопки не удастся, для этого необходимо будет добавить образ, как жесткий диск. Аналогичным способом «прикрепляются» и снэпшоты (снимки диска).

Hardware management

В очередной раз отмечу, что из-за наличия UUID, о которых говорилось выше, нельзя просто скопировать и прикрепить образ диска.

Snapshots (Снэпшоты)

Как известно snapshot в переводе с английского означает снимок. Принцип работы механизма прост. При создании снэпшота, VirtualBox переводит текущий образ (образы, если их несколько), прикрепленный к ВМ в режим только для чтения и создает отдельный виртуальный диск (диски) и все последующие процедуры записи производятся уже в новом виртуальном хранилище. Причем фиксируются только изменения в определенных секторах, проще говоря при создании снэпшота диска размером 10GB, новый снэпшот будет гораздо меньше, и будет увеличиваться в размере постепенно, как будут заполнятся сектора.

Snapshots

Логично предположить, что чем больше используется снэпшотов одной виртуальной машины, тем больше используется вычислительных ресурсов для выполнения операций чтения с диска. Действительно, если есть 2 снэпшота, то вначале VirtualBox смотрит есть ли нужный сектор в образе снэпшота2, если нет, то система обращается к снэпшоту1, если и там ничего не обнаружено, то тогда идет обращение к основному диску. Нагрузка все-же будет незначительной и мало заметной для конечного пользователя, т, к. вся таблица секторов постоянно присутствует в памяти.

Стоить помнить, что при удалении снэпшота, все изменения произведенные после его создания «сливаются» с ранее «замороженным» образом.

Кэширование ввода/вывода

Помимо расходa ресурсов еще одним недостатком кэширования является недостаточная надежность. Например, если внезапно случился перебой с электропитанием в момент, когда хоставая ОС уже сообщила гостевой об успешном выполнении записи, а сам процесс асинхронной записи еще не завершился. Такой сценарий безусловно приводит к потере данных.

Отключение кэширования выполняется следующим образом:

Bandwidth

VirtualBox позволяет ограничивать ширину пропускного канала для одного или нескольких виртуальных дисков.

Создаем группу “Limit” и устанавливаем лимит в 20 Mb/s


Добавляем нужные диски в группу.


Суммарный для обоих дисков bandwidth не будет превышать 20 MB/s. Этот лимит можно изменить в любой момент, не выключая виртуальной машины.

Особые режимы записи образов

Для каждого образа виртуального диска, поддерживаемого VirtualBox, не зависимо от формата, можно определить режим поведения при записи данных, будь это следствие операций внутри виртуальной машины или снимка дика (snapshot). Такие режимы называются «нестандартными», в то время, как по умолчанию все образы дисков функционируют в «нормальном» режиме. Для того, что бы перевести режим из «нормального» в «нестандартный» можно воспользоваться вышеупомянутым Virtual Media Manager или консольной утилитой vboxmanage


В «нормальном» режиме записи, гостевая ОС может осуществлять чтение и запись с физического диска без всяких ограничений a при создании снимков диска (snapshot), VirtualBox создает oтдельный файл в котором фиксируются все изменения.

В режиме «write through» функция снэпшотов работать не бует.

Режим работы «shareable» своего рода разновидность предыдущего. Тут тоже нет возможности работы со «снэпшотами», зато есть возможность использования несколькими одновременно работающими виртуальными машинами одного образа диска, сценарий кластеризации.

Схожий по названию, но отличающийся по принципам работы режим «multiattach», также позволяет использовать один образ диска для нескольких виртуальных машин, но в этом режиме каждая отдельная виртуальная машина использует свой независимый «снэпшот» и изменения произведенные в одной ВМ не доступны для других.

Режим «read only» используется в основном для работы с образами CD/DVD, т.к. предполагает только чтение.

Режим на который стоит обратить внимание называется «Immutable». Как следует из названия immutable образы не меняются с течением времени. Любые изменения в immutable диске актуальны ровно до тех пор, пока виртуальная машина работает. После отключения виртуальной машины все изменения пропадают. Прежде чем перевести диск в режим immutable стоит сначало создатъ «нормальный» диск, установить и настроить систему в оптимальное состояние, желательно не подключаясь к интеренету, и только после того, как гостевая система готова — «откреплять» диск и переводить его в режим immutable.

Одним из сценариев работы может быть схема при которой используются два диска – один в режиме immutable, на котором находится сама система, второй в нормальном или write-through режиме. На первый взгляд вполне безопасный и понятный сценарий работы — каждый раз загружается «свежая» система. Но не все так прозрачно и есть некоторые нюансы.

Во первых, для immutable дисков есть одно важное исключение. Они не “обнуляются” в случае, когда прикреплены к виртуальной машине, снимок диска которой был сделан пока та была запущенна — так называемый online-snapshot. Это означает, что если например, пользователь создал immutable disk, а потом в процессе работы, создал «снэпшот», не завершив работу виртуальной машины, то начиная с упомянутого «снэпшота» все последующие операции и действия внутри системы будут носить необратимый эффект, т.к. все действия будут де-факто происходить в «снэпшоте».

В случае если основной целью является «свежая система» при каждом запуске, то от использования снэпшотов, лучше воздержаться.

Во-вторых, вышеописанное «обнуление» отдельного образа происходит только в случае, когда команда включения/отключения виртуальной машины посылается самой средой VirtualBox, а не происходит внутри гостевой ОС. Проще говоря, если например перезагрузить гостевую ОС Windows стандартным методом (Меню пуск, перезагрзить систему), то обнуление immutable диска не произойдет.

Наконец последнее и самое важное — все изменения происходившие внутри виртуальной машины сохраняются на физическом диске и остаются там до тех пор, пока виртуальная машина не будет запущена заново.

После того, как текущий контейнер установлен в режим immutable, VirtualBox перестает использовать этот контейнер и фактически диск переходит в режим «read only». Все операции записи перенаправляются в отдельный образ и каждый раз, когда виртуальная машина начинает работу этот новый «отдельный» образ «обнуляется». В реальности на жестком диске создается временный «снэпшот», который находится в папке Snapshots, соответствующей виртуальной машины, внутри которого и происходит вся работа. После завершения работы виртуальной машины вышеупомянутый временный скриншот остается нетронутым.

Рассмотрим простой пример

Боб создал виртуальную машину, настроил ОС и перевел диск в режим immutable. Боб регулярно использует свою виртуальную машину для тайного общения с Алисой. При каждом запуске, загружается «свежая» система, не содержащая никаких логов предыдущего общения, текстов, видео или фото. В очередной раз закончив переписку, Боб спокойно выключает виртуальную машину и идет спать.
Предположим также, что перед каждым запуском ОС Боб проверяет, что режим диска установлен как “immutable”.

Ева имеет доступ к компьютеру на котором установлена виртуальная машина. Ей достаточно зайти в папку Snapshots внутри директории соответствующей виртуальной машины и там будет требуемый «снэпшот».

Все что остается сделать Еве, что бы увидеть всю переписку, равно как и результат всех действий производимых Бобом внутри ОС, это перевести диск в «нормальный» режим и перед тем, как запустить виртуальную машину прикрепить к ней снэпшот. Более того, Ева может каждый день делать резервные копии таких «снэпшотов», главное, что бы это было сделано до того, как Боб снова запустит виртуальную машину.

Решением для Боба в данной ситуации будет после завершения работы, вручную удалять все содержимое папки Snapshots. Не говоря уже о том, что надо постоянно проверять в каком режиме работает диск и желательно, либо вообще заблокировать некоторые элементы GUI, что достаточно просто реализуется


Справедливости ради стоит сказать, что у тех-же Parallels, с самых ранних версий для того, что бы перевести диски из одного режима в другой необходим пароль суперпользователя, а временные «снэпшоты» удаляются моментально, после завершения работы.

последние версии VirtualBox поддерживают несколько форматов виртуальных дисков, но они забыли провести сравнение между ними.

  • VDI
  • VMDK
  • виртуальный жесткий диск
  • HDD

теперь меня интересует рекомендация или сравнение, которое учитывает следующее:

  • быть в состоянии использовать динамические размеры
  • иметь снимки
  • возможность переместить виртуальную машину на другая ОС или даже другое бесплатное решение виртуализации с минимальными усилиями (вероятно, что-то, что будет работать нормально на Ubuntu).
  • производительность

Отвечая На Ваши Соображения

  • возможность использования динамических размеров

VDI,VMDK и виртуальный жесткий диск все поддерживают динамически выделяемые размеры. VMDK имеет дополнительный возможность разделения файла хранилища на файлы размером менее 2 ГБ каждый, что полезно, если ваша файловая система имеет небольшое ограничение на размер файла.

все четыре формата поддержка снимков на VirtualBox.

  • быть в состоянии переместить свою виртуальную машину на другую ОС или даже другое свободное решение виртуализации с минимальными усилиями (вероятно, что-то, что будет работать нормально на Ubuntu).

VDI-это собственный формат VirtualBox. Я не искал другого программного обеспечения, которое поддерживает этот формат.

VMDK является разработанная и для VMware, но солнце хуш, в QEMU, VirtualBox, но в SUSE Studio и .Чистая DiscUtils и поддержать его. (этот формат может быть наиболее подходящим для вас, потому что вы хотите виртуализации программного обеспечения, которое будет работать нормально на Ubuntu.)

VHD является собственным форматом Microsoft Virtual ПЕРСОНАЛЬНЫЙ КОМПЬЮТЕР. Этот формат популярен среди продуктов Майкрософт.

Я ничего не знаю о HDD. Судя по глядя на этот сайт, Parallels является продуктом Mac OS X и, вероятно, не подходит для вас, особенно учитывая, что VirtualBox поддерживает только старую версию формата HDD.

формат не должен влиять на производительность, или, по крайней мере, влияние на производительность незначительный.

факторы, которые влияют на производительность,:

  • ваши ограничения физического устройства (гораздо более заметны на жестком диске, чем твердотельный накопитель. почему?)
  • расширение динамически выделяемого виртуального диска (операции записи выполняются медленнее по мере расширения виртуального диска, но как только он становится достаточно большим, расширение должно происходить меньше)
  • технологии виртуализации (аппаратное и программное обеспечение; виртуализация оборудования помогает VirtualBox и повышает скорость работы виртуальных операционных систем)
  • тот факт, что вы используете виртуальную операционную систему. Производительность всегда ниже, чем при работе операционной системы на узле из-за процесса виртуализации.

Я всегда использую VDI, так как это родной формат VirtualBox; однако использование VMDK (формат VMWare) увеличит совместимость с другим программным обеспечением виртуальной машины.

VirtualBox будет отлично работать на Ubuntu, поэтому, если цель-совместимость Windows/Ubuntu, VDI будет вполне допустимым выбором.

оба формата выполнят ваши требования.

Что касается двух других, VHD-это формат, разработанный Microsoft, а HDD-формат, разработанный Apple; эти оба имеют собственную лицензию, поэтому ограничивайте кросс-платформенную поддержку;я бы не рекомендовал их.

Mpack, объясняет ключевую разницу в производительности между VHD и VDI здесь:

недавно изучив формат VHD, я ожидал бы, что будет по крайней мере небольшая разница в пользу VDIs, наиболее заметная, когда вы сравниваете, как с like, т. е. оптимизированный VDI против оптимизированного VHD. Причина в том, что динамический формат VHD имеет эти" растровые " сектора, разбросанные по всему диску. Каждый раз, когда вы изменяете сектор внутри блока, эти растровые блоки, возможно, должны быть обновлено и написано тоже, с участием дополнительных ищет, читает и пишет. Эти растровые сектора также должны быть пропущены при чтении последовательных кластеров из образа диска-more seeks. Формат VDI не имеет этих накладных расходов, особенно если VDI был оптимизирован (блоки на виртуальном диске отсортированы в порядке LBA).

все мои комментарии относятся к динамическому формату VHD и динамическому VDI. Тесты производительности на виртуальных дисках фиксированного размера бессмысленны, поскольку оба формата то же самое (просто простой образ диска), на них просто разные заголовки.

Я не знаю, позволит ли использование vmdk прозрачно запускать виртуальную машину, созданную в VirtualBox в VMware или нет. Может быть. Однако более универсальным вариантом может быть использование функции VirtualBox File/Export для создания "открытого устройства виртуализации" .OVA файл, который затем можно импортировать в VMware. При таком подходе можно портировать на любую систему виртуализации, которая поддерживает .ova не заботясь о том, какой формат образа диска вы используете в VirtualBox.

Если вам нужно экспорт из одной и той же виртуальной машины через регулярные промежутки времени, например, каждый день, это может быть болью. Но если вы только время от времени переходите на другую технологию, все должно быть хорошо.

Если у вас есть .файл vdi уже можно проверить, работает ли это без создания новой виртуальной машины. Экспортировать его в .ova, затем попробуйте выполнить импорт с помощью vmware.

файлы образов дисков находятся в хост-системе и воспринимаются гостевыми системами как жесткие диски определенной геометрии. Когда гостевая операционная система читает или записывает данные на жесткий диск, VirtualBox перенаправляет запрос в файл образа.

как физический диск, виртуальный диск имеет размер (емкость), который должен быть указан при создании файла изображения. В отличие от физического диска, VirtualBox позволяет развернуть файл образа после создания, даже если он содержит данные уже; VirtualBox поддерживает четыре варианта файлов образов дисков:

VDI: как правило, VirtualBox использует свой собственный формат контейнера для гостевых жестких дисков-файлы образа виртуального диска (VDI). В частности, этот формат будет использоваться при создании новой виртуальной машины с нового диска.

VMDK: VirtualBox также полностью поддерживает популярный и открытый формат контейнеров VMDK, используемый многими другими продуктами виртуализации, в частности VMware.[25]

VHD: VirtualBox также полностью поддерживает формат VHD, используемых Microsoft.

файлы изображений Parallels версии 2 (формат HDD) также поддерживаются.[26] из-за отсутствия документации формата новые форматы (3 и 4) не поддерживаются. Однако вы можете конвертировать такие файлы изображений в формат версии 2 с помощью инструментов, предоставляемых Parallels.

хорошая причина для меня для использования vmdk-это Virtualbox (по крайней мере, до v4.1) использование формата VDI имеет тенденцию со временем заполнять все выделенное дисковое пространство, даже если внутреннее использование виртуального диска все еще намного меньше. С Virtualbox, использующим диски vmdk, это кажется менее проблематичным.

но я говорю о времени безотказной работы. Это не может быть проблемой, с которой сталкиваются многие люди.

Это зависит от того, как вы планируете использовать как виртуальный диск. Не каждой виртуальной машине нужен отдельный раздел на одном диске.

VDI, кажется, имеет больше вариантов (при использовании с VirtualBox), но как только вы берете VirtualBox из картины, поддержка VDI становится несколько шаткой (по состоянию на конец 2014 года).

например, мои решения должны иметь максимальную кросс-платформенную поддержку. Монтирование VDI (например, устройства обратной связи) в linux или Windows 7 сложнее и сложнее, чем вы можете ожидать. Почти как VDI имеет слишком много функций, что делает его трудно сделать полностью соответствующие утилиты, которые могут работать на нем.

VMDK-это просто менее безболезненно ИМХО, когда вы хотите работать с любой виртуальной машины на любой рабочей станции, когда вы хотите клонировать его 3 раза с другими системами в сети одновременно, и когда вы хотите, чтобы открыть ее без запуска ВМ экземпляр.

несмотря на то, что я использую VirtualBox 90% времени, те несколько раз, когда мои диски становятся необъяснимые в некоторых рабочих процессах привели меня к тому, что VMDK для подключаемых/общих файловых систем.

Отличный инструмент для виртуализации любой операционной системы. Для чего это нужно? У многих есть интерес попробовать, например, Windows 10 или Linix, Ubunt, чтоб не было необходимость удалять свою операционную систему ради теста, нам поможет данная программа.

Я привел пример на операционных системах, но также её можно использовать как дополнительную область для проб различных программ, создать выделенный сервер и многое другое.

После того как вы скачали программу её нужно будет установить на компьютер, во время установки может пропасть интернет, так говорит сама программа.

После установки программы, запустите и перед вами будет диалоговое окно, где вас попросят ввести:


После ввода необходимой информации нажмите Next

На данном этапе вы должны указать какой объем оперативной памяти будет взят для виртуальной системы, посмотрите сколько у вас оперативной памяти и укажите не более 30-40%.


Я указал 2048 мб, нажимаем Next

Оставляем точку на «Создать новый виртуальный жёсткий диск», описание всех обозначений написано в диалогом окне.


VirtualBox поддерживает 6 типа файлов образов диска:


Оставим VDI как стандартное решение, Next

Fixed hard disk image — дисковый образ фиксированного размера, выделяется файл такого же размера как заданный размер виртуального диска.

Dynamic hard disk image — динамический образ, имеет размер равный размеру записанных на диск данных. Перезаписывание существующих данных может не приводить к росту образа.


На ваш выбор, я оставлю динамический. Next

Укажите размер жесткого диска (с вашего жесткого диска вычтут тот размер который указали)

Читайте также: