Поиск на сайте: Расширенный поиск


Новые программы oszone.net Читать ленту новостей RSS
CheckBootSpeed - это диагностический пакет на основе скриптов PowerShell, создающий отчет о скорости загрузки Windows 7 ...
Вы когда-нибудь хотели создать установочный диск Windows, который бы автоматически установил систему, не задавая вопросо...
Если после установки Windows XP у вас перестала загружаться Windows Vista или Windows 7, вам необходимо восстановить заг...
Программа подготовки документов и ведения учетных и отчетных данных по командировкам. Используются формы, утвержденные п...
Red Button – это мощная утилита для оптимизации и очистки всех актуальных клиентских версий операционной системы Windows...
OSzone.net Microsoft Windows 7 Новые возможности Работа с виртуальными жесткими дисками (VHD) в Windows 7 RSS

Работа с виртуальными жесткими дисками (VHD) в Windows 7

Текущий рейтинг: 4.44 (проголосовало 165)
 Посетителей: 180457 | Просмотров: 241876 (сегодня 0)  Шрифт: - +

Введение

В июне 2005 года компания Microsoft разработала новую спецификацию формата образов виртуальных жестких дисков (Virtual Hard Disk - VHD). VHD – это формат файла, у которого полная структура и содержимое аналогичны с жестким диском. Он используется для хранения виртуальных операционных систем, программ и других файлов в одном файле-образе, который можно открыть разными программами виртуализации или виртуальными машинами. Формат Microsoft VHD в настоящее время используется в Microsoft Virtual PC 2007, Microsoft Virtual Server 2005 R2 и Hyper-V. Виртуальные жесткие диски позволяют нескольким операционным системам одновременно находиться на одном компьютере. Файл VHD определяет формат жесткого диска виртуальной машины, который расположен в едином файле на хостовой операционной системе. Помимо этого, операционные системы Windows 7 и Windows Server 2008 R2 могут поддерживать создание, подключение и загрузку с VHD-дисков, расположенных на хостовой системе. В этой статье я расскажу о поддерживаемых типах виртуальных жестких дисков, а также о базовых операциях, которые можно с ними выполнять.

Поддерживаемые форматы виртуальных жестких дисков

Жесткие диски виртуальных машин хранятся на хостовой операционной системе в виде отдельных файлов. Существует три типа виртуальных дисков:

  1. Динамически расширяемый дисковый образ, который обеспечивает объем пространства, необходимый для хранения данных. Размер VHD-файла в момент создания диска небольшой, но увеличивается по мере добавления данных на диск. Распределение данных осуществляется в блоках. При удалении данных с виртуального жесткого диска размер VHD-файла автоматически не уменьшается. Например, если был создан динамически расширяемый жесткий диск, объемом 5 Гб, то изначально этот файл на хостовой системе будет занимать порядка двух мегабайт. По мере накопления информации в этом образе, его размер будет увеличиваться, пока не достигнет пяти гигабайт.
  2. *

    Помимо этого, динамические диски хранят метаданные, которые используются при получении доступа к данным пользователей, хранящихся на жестком диске. Максимальный размер динамического жесткого диска 2040 Гб. Фактический размер ограничивается основным протоколом аппаратного диска. Например, ATA жесткие диски имеют 127 ГБ.

  3. Дисковый образ фиксированного размера, который обеспечивает необходимую емкость, используя VHD-файл, размер которого задается при создании виртуального жесткого диска. Размер VHD-файла остается постоянным независимо от объема хранимых данных. Например, если был создан диск фиксированного размера, объемом 5 Гб, то система создаст файл, который будет занимать ориентировочно 5 Гб.
  4. Пространство, отведенное для передачи данных, использует структуру Hard Disk Footer Format. В этом случае, размер файла на хостовой операционной системе будет включать в себя размер жесткого диска гостевой операционной системы и размер нижнего колонтитула.

  5. Разностный дисковый образ, который позволяет вносить изменения в родительский виртуальный жесткий диск, не изменяя данный диск. Размер VHD-файла для разностного диска увеличивается по мере сохранения новых изменений на диске. Другими словами, образ жесткого диска отображает текущее состояние виртуального жесткого диска как набор измененных блоков по сравнению с родительским изображением. Этот тип напрямую зависит от другого образа жесткого диска. Родительский образ жесткого диска может быть любым из упомянутых типов образов жесткого диска, в том числе и другой разностный образа жесткого диска.

Базовые действия, выполняемые с VHD-дисками

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

Очень полезная статья об установке операционной системы Windows 7 на виртуальный диск была написана Игорем Шаститко: Kaк установить Windows 7 и ничего не «сломать», а также можете посмотреть видео доклад Михаила Гоча «Новые возможности Windows 7. Загрузка системы с диска VHD».

Создание виртуальных жестких дисков

Для того чтобы создать виртуальный жесткий диск, выполните следующие действия:

  1. Откройте оснастку управления компьютером. Это можно сделать следующими способами:
    • Нажмите правой кнопкой мыши на значке «Компьютер» и из контекстного меню выберите команду «Управление»;
    • Нажмите на кнопку «Пуск» для открытия меню, откройте «Панель управления», из списка компонентов панели управления выберите «Администрирование» и из списка административных компонентов выберите «Управление компьютером»;
    • Откройте «Консоль управления MMC». Для этого нажмите на кнопку «Пуск», в поле поиска введите mmc, а затем нажмите на кнопку «Enter». Откроется пустая консоль MMC. В меню «Консоль» выберите команду «Добавить или удалить оснастку» или воспользуйтесь комбинацией клавиш Ctrl+M. В диалоге «Добавление и удаление оснасток» выберите оснастку «Управление компьютером» и нажмите на кнопку «Добавить». Затем нажмите на кнопку «Готово», а после этого – на кнопку «ОК»;
    • Создайте на рабочем столе значок, где в поле «Укажите расположение объекта» введите %windir%\system32\compmgmt.msc /s
  2. Раскройте узел «Запоминающие устройства», нажмите правой кнопкой мыши на «Управление дисками» и из контекстного меню выберите команду «Создать виртуальный жесткий диск»;

  3. *

  4. Нажмите на кнопку «Обзор» для того чтобы указать папку, в которой будет располагаться файл виртуального жесткого диска на вашем компьютере;

  5. *

  6. В появившемся диалоге «Просмотр файлов виртуального диска» выберите папку, в которую должен быть сохранен файл. Если требуется сохранить файл в новой папке, то ее можно создать непосредственно из этого диалога, используя контекстное меню или кнопку «Новая папка» на панели действий. В поле «Тип файла», укажите тип «Файлы виртуального диска». В поле «Имя файла» введите имя и нажмите на кнопку «Сохранить»;

  7. *

  8. В диалоге «Создать и присоединить виртуальный жесткий диск» укажите размер виртуального диска и выберите его формат. Возле текстового поля, в которое нужно ввести размер диска, присутствует раскрывающийся список, где можно выбрать размер жесткого диска. Доступные значения – мегабайты, гигабайты и терабайты. При выборе формата жесткого диска доступны варианты: динамическое расширение, а также фиксированный размер, о принцип которых описан выше.

  9. *

  10. Нажмите на кнопку «ОК».

Виртуальный жесткий диск также можно создать средствами утилиты командной строки DiskPart. Для этого в командной строке с правами администратора нужно воспользоваться командой Create Vdisk. Синтаксис команды следующий:

Create Vdisk File=<имя_файла> Maximum=<n> Type=Fixed|Expandable [/Опция Параметр]

Где:

  • При помощи параметра File можно указать полный путь и имя виртуального диска.
  • Параметр Maximum отвечает за максимальное дисковое пространство, предоставляемое виртуальным диском, заданное в мегабайтах.
  • При помощи параметра Type можно указывать формат виртуального диска. Существует два значения для данного параметра:
    • FIXED создает файл виртуального диска фиксированного размера;
    • EXPANDABLE создает динамически расширяемый образ виртуального диска.
  • При помощи параметра Parent можно указать путь к существующему родительскому файлу виртуального диска для создания разностного диска. При использовании Parent нельзя использовать параметр Maximum, поскольку размер разностного диска определяется родительским файлом. Помимо этого, также нельзя задавать параметр Type, поскольку создавать можно только расширяемые (параметр Expandable) разностные диски.
  • Параметр Source предназначен для того чтобы указывать путь к существующему файлу виртуального диска для предварительного заполнения нового файла виртуального диска. При использовании параметра Source данные из исходного файла виртуального диска копируются блок за блоком в создаваемый файл виртуального диска. Однако между ними отсутствуют отношения родитель-потомок.

С помощью параметра SD можно указать дескриптор безопасности в формате языка SDDL. По умолчанию дескриптор безопасности берется из родительского каталога. В простейшем случае строка может содержать дескриптор безопасности, обеспечивающий защиту доступа, который называется списком управления доступом на уровне пользователей (DACL).

*
Увеличить рисунок

Присоединение виртуального жесткого диска

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

  1. Откройте «Управление компьютеров». В нем, раскройте узел «Запоминающие устройства», нажмите правой кнопкой мыши на «Управление дисками» и из контекстного меню выберите команду «Присоединить виртуальный жесткий диск»;
  2. Нажмите на кнопку «Обзор», чтобы выбрать файл виртуального жесткого диска. Если вам не нужно записывать данные на диск, то в этом диалоге можно установить флажок «Только для чтения»;

  3. *

Также виртуальный жесткий диск можно присоединить средствами утилиты командной строки DiskPart. Для этого в командной строке с правами администратора нужно выбрать нужный виртуальный диск командой Select Vdisk, а затем воспользоваться командой Attach Vdisk. Синтаксис следующий:

Attach Vdisk

Эту команду можно использовать без параметров. Доступные параметры:

  • Параметр ReadOnly присоединяет виртуальный диск в режиме только для чтения. Любая операция записи приведет к возникновению ошибки ввода-вывода устройства.
  • При помощи параметра UseFileSD можно указать, что для виртуального диска следует использовать дескриптор безопасности самого виртуального файла. Если параметр не указан, то у диска не будет явно заданного дескриптора безопасности, если не был также задан параметр SD=(строка SDDL).
  • Параметр SD задает дескриптор безопасности в формате SDDL. По умолчанию дескриптор безопасности обеспечивает доступ, аналогичный любому физическому диску. Дополнительные сведения о формате строки SDDL см. в справке по команде Create Vdisk.
  • *
    Увеличить рисунок

Инициализация виртуального жесткого диска

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

  1. Откройте «Управление компьютеров». В нем, раскройте узел «Запоминающие устройства» и нажмите левой кнопкой мыши на «Управление дисками»;
  2. Найдите диск, который нужно инициализировать, нажмите на нем правой кнопкой мыши и из контекстного меню выберите команду «Инициализировать диск»;

  3. *

  4. В диалоге «Инициализация дисков» выберите нужный стиль разделов для выбранного виртуального диска. Доступные стили:
    • Основная загрузочная запись (Master Boot Record - MBR) - это первый физический сектор на жёстком диске или другом устройстве хранения информации, разбиваемом на логические диски (разделы). MBR содержит таблицу разделов (partition table) и небольшой фрагмент исполняемого кода;
    • Таблица с GUID разделов (GUID Partition Table - GPT) – это стандартный формат размещения таблиц разделов на физическом жестком диске. Он является частью Extensible Firmware Interface (EFI) (Расширяемый Микропрограммный Интерфейс) — стандарта, предложенного Intel на смену отжившего BIOS, одного из последних реликтов первозданной IBM PC

  5. *

  6. Нажмите на кнопку «ОК».

Создание простого тома в VHD диске

Для того чтобы создать простой том в VHD диске, выполните следующие действия:

  1. Нажмите на правую кнопку на нераспределенном VHD диске и из контекстного меню выберите команду «Создать простой том»;

  2. *

  3. В первом диалоге мастера создания простого тома нажмите на кнопку «Далее»;
  4. В диалоге указания размера тома, укажите размер будущего тома в мегабайтах и нажмите на кнопку «Далее»;

  5. *

  6. В диалоге «Назначение буквы диска или пути» укажите букву для будущего диска и нажмите на кнопку «Далее»;

  7. *

  8. В диалоге «Форматирование раздела» укажите нужную файловую систему, размер кластера, название диска и установите флажок возле опции «Быстрое форматирование», если хотите, чтобы диск был сразу отформатирован. После чего нажмите на кнопку «Далее»;

  9. *

  10. Ознакомьтесь со всеми действиями, которые будут выполнены в диалоге «Завершение мастера создания простого тома» и нажмите на кнопку «Готово».

  11. *

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

*
Увеличить рисунок

Отсоединение виртуального диска

Для того чтобы отсоединить виртуальный диск, выполните следующие действия:

  1. Найдите виртуальный диск, который хотите отсоединить, нажмите на нем правой кнопкой мыши и из контекстного меню выберите команду «Отсоединить виртуальный жесткий диск»;

  2. *

  3. В диалоге «Отсоединить виртуальный жесткий диск» нажмите на кнопку «ОК». Если вы хотите этот диск полностью удалить, то отметьте флажок «Удалить виртуальный диск после удаления диска».

*

Отсоединить виртуальный жесткий диск также можно при помощи утилиты командной строки DiskPart. Для этого в командной строке с правами администратора нужно выбрать предполагаемый виртуальный диск командой Select Vdisk, а затем воспользоваться командой Detach Vdisk. Синтаксис команды следующий:

Detach Vdisk

*
Увеличить рисунок

Просмотр информации о виртуальном диске

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

  1. Выберите нужный виртуальный диск при помощи команды Select Vdisk;
  2. Присоедините диск, если он еще не присоединен к компьютеру;
  3. Воспользуйтесь командой Detail Vdisk

*
Увеличить рисунок

Для данной команды не существует дополнительных параметров.

Сжатие виртуальных дисков

При помощи утилиты командной строки DiskPart можно сжимать виртуальные диски. Для этого выберите нужный виртуальный диск, подключите диск в режиме «только для чтения» и воспользуетесь командой Compact Vdisk. Эта команда сжимает файл виртуального диска для уменьшения физического размера файла. Сжатие возможно только для отсоединенного расширяемого виртуального диска или для расширяемого виртуального диска, подключенного в режиме «только для чтения».

Заключение

В этой статье вкратце рассказывается о технологии Virtual Hard Disk (VHD) и о возможных форматах виртуальных жестких дисков. Также подробно описаны базовые действия, которые можно проводить над виртуальными жесткими дисками при помощи графического интерфейса, а также средствами утилиты командной строки DiskPart. Описаны варианты создания, присоединения, инициализации, отсоединения и просмотра информации о виртуальных жестких дисках.


Статья опубликована в рамках конкурса "Наш выбор - Windows 7!". Оригинальный стиль автора сохранен.

Автор: Dmitry_Bulanov  •  Иcточник: dimanb.spaces.live.com  •  Опубликована: 15.12.2009
Нашли ошибку в тексте? Сообщите о ней автору: выделите мышкой и нажмите CTRL + ENTER


Оценить статью:
Вверх
Комментарии посетителей
17.12.2009/12:49  alshansky

Подскажите, пожалуйста, уважаемые!
А если я виртуальный диск сей использую для опробации какой системы, фряхи той же, то не нарушит ли это работы основной оси?
10.02.2011/16:17  kuku1

Не удается сжать vhd совсем! Команда compact vdisk в diskpart не работает! Точнее говоря, она делает вид что работает и даже выдает обнадеживающие сообщения но не сжимает вообще! Я держу все свои файлы на vhd-дисках и ношу их между разными компьютерами и ноутбуками, поэтому вопрос сжатия весьма актуален. Перед попыткой сжатия я даже сделал дефрагментацию и оптимизацию диска (для удаления дыр между блоками) с помощью ausdiskdefragportable.exe, far дает объем папок на диске - 3 гб, файл vhd имеет 9 гб (всего динамический диск на 1Тб), после сжатия compact vdisk - размер тот же - 9 гб, тогда я сделал новый vhd диск на 1 Тб, его размер сразу после форматирования - 80 Мб, и переместил туда все 3 Гб файлов, после этого размер его стал 6 Гб, а попытка сжатия полностью пустого старого диска через compact vdisk привела к тому, что размер файла пустого диска стал не 9 Гб, а 8.9 Гб. Вопросы такие: как оптимально уменьшить размер vhd файла, чтобы его объем не был в 2 раза больше чем объем файлов на нем?
24.11.2011/17:43  Ua-life

Ничего себе, что умеет Windows7.
02.12.2011/02:19  kuzsacha

после перезагрузки он почемуто пропадает
15.04.2012/10:07  ОлегК

DiskPart has encountered an error: There is not enough space on the disk.
See the System Event Log for more information.
Это сообщение о невозможности создания диска, потому как на машине с 35 гигами с ОС Win 7 Ultimat невозможно!
07.07.2012/17:35  Бухой Маг

Здравствуйте Дмитрий. Заранее спасибо.
У меня всё получилось(диск создан) однако столкнулся с проблемой, а именно после перезагрузки диск ПРОПАДАЕТ приходиться постоянно вручную монтировать. Как сделать так что созданный мной диск не пропадал. А постоянно загружался вместе с системой?
в таких делах мало что понимаю прошу по подробнее(мож прога какая есть?)
p.s win7 домашняя базовая.
29.11.2012/01:18  machito42

Интересная статейка, не понятно только одно для чего создавать этот диск ? Когда можно воспользоватся обычным способом чтоб он не исчезал...Бухой Маг, так не проще сделать !?
http://remontcompa.ru/143-razdelit-disk-v-windows-7.html
06.02.2013/02:58  Потусторонний

Вот, кое что из практики работы с виртуальными дисками:
сам долго искал, упрощу кому то жизнь, в ру-нете ответа не нашел)) но все же нашел:
В общем процедура такая:
Сжатие VHD
Скачиваем SDelete v1.61, http://technet.microsoft.com/en-us/sysinternals/bb897443
Запускаем:
sdelete.exe -z V: [где V: уже подключенный виртуальный диск VHD]
Потом уже рекомендованными везде командами, которые все таки сжимают в конце концов диск:):
diskpart
select vdisk file="d:\VHD\d1.vhd" [d:\VHD\d1.vhd - путь к тому же образу виртуального диска]
compact vdisk
PS кстати если кому надо, автоподключение виртуального VHD диска при загрузке:
Создаем Файл attach.cmd:
diskpart -s "D:\VHD\attachvhd.s"
создаем Файл attachVHD.s:
select vdisk file="D:\VHD\games.vhd"
attach vdisk
attach.cmd в планировщик при старте системы.
- Выполнять вне зависимости от регистрации пользователя ОБЯЗАТЕЛЬНО!!!
Все. До появления пользователя у клавиатуры диск уже доступен по сети.
25.03.2015/13:16  ivan.brodkin1985

Здравствуйте уважаемые форумчане, помогите решить проблему с VHD...
Установил ещё одну 7 пробную на VHD, но создал диск сразу как появилось меню установки ОС а не в меню выбора жёсткого диска и как следствие, указал не ту букву диска, хотел на свой D указал D но при установке буквы смешаются и моя буква D принадлежала уже системному диску установленной ОС, после установки я запустил простую ОС и увидел что диск С забит, оказалось что мой созданный VHD расположен на диске С. Я его переместил на D тупым копированием и естественно он перестал загружаться. Перековырял как мог BCDEDIT значения и в device и path поменял на D но эта редиска не хочет грузится. Как быть? Как заставить видить загрузчик VHD диск на D и не повредился ли сам VHD при тупом копировании? S O S
Комментарии отключены. С вопросами по статьям обращайтесь в форум.