Я только что создал VHD на Windows Server 2012 фиксированное пространство 1 ГБ, но я действительно запутался, как он получает пространство? Откуда берется 1ГБ? Если бы мне пришлось перенести виртуальный жесткий диск на другую виртуальную машину, откуда он знает, что нужно взять все файлы с виртуального жесткого диска, не понимаю ...
3 ответа
То, что вы спросили, немного сбивает с толку, но, я думаю, я понимаю, что вы хотите знать, как может существовать файл такого размера, который фактически не содержит никаких данных ...
VHD - это в основном (но не совсем) файл контейнера (аналог ZIP/rar/others) ... Когда вы создаете VHD-файл объемом 1 ГБ, он в основном создает пустой файл того размера, который вам нужен на жестком диске.
Файлы на самом деле не должны содержать ничего - файл - это, по сути, смесь записи, описывающей файл (таблица метаданных / размещения) и сами данные - так что запись может указывать, что файл имеет размер x вместе с местоположением данных - но сами данные просто пустые.
Когда вы создаете виртуальный жесткий диск, вы выделяете пространство на своем физическом жестком диске для виртуального диска. Таким образом, если у вас есть диск на 20 ГБ, и вы создаете виртуальный жесткий диск на 10 ГБ, теперь у вас есть виртуальный жесткий диск на 10 ГБ, но ваш физический диск также ограничен 10 ГБ.
VHD будет хранить все ваши файлы как обычный жесткий диск, но это просто логично ... не физически. ТАК это будет работать таким же образом.
Короче говоря, виртуальный жесткий диск - это фактический файл, который может быть fixed
где он был немедленно создан с полным размером вашего виртуального жесткого диска, или dynamic
когда файл будет увеличиваться по мере заполнения пустого пространства . Сам файл VHD ведет себя аналогично физическому диску. Если гостевая ОС записывает данные в сектора 100-120 (например), виртуальный гипервизор принимает эти инструкции и вместо записи их на физический диск ... вместо этого записывает данные в файл VHD.