Mount-VHD
Mounts one or more virtual hard disks.
Syntax
Description
The Mount-VHD cmdlet mounts one or more virtual hard disks.
Examples
Example 1
Mounts a virtual hard disk where the path to the virtual hard disk file is c:\test\testvhdx.vhdx.
Example 2
Mounts a virtual hard disk in read-only mode where the path to the virtual hard disk file is c:\test\testvhdx.vhdx.
Example 3
Attaches a virtual hard disk to the system where the path to the virtual hard disk file is c:\test\testvhdx.vhdx, and gets the volumes associated with it.
Parameters
Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a New-CimSession or Get-CimSession cmdlet. The default is the current session on the local computer.
| Type: | CimSession [ ] |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Specifies one or more Hyper-V hosts on which a virtual hard disk is to be mounted. NetBIOS names, IP addresses, and fully qualified domain names are allowable. The default is the local computer. Use localhost or a dot (.) to specify the local computer explicitly.
| Type: | String [ ] |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Prompts you for confirmation before running the cmdlet.
| Type: | SwitchParameter |
| Aliases: | cf |
| Position: | Named |
| Default value: | False |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Specifies one or more user accounts that have permission to perform this action. The default is the current user.
| Type: | PSCredential [ ] |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Specifies that the virtual hard disk is to be mounted without assigning drive letters to the volumes contained within the virtual hard disk.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Specifies that an object is to be passed through to the pipeline representing the virtual hard disk to be mounted.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Specifies the path to the virtual hard disk file for the virtual hard disk to be mounted. If a filename or relative path is specified, the virtual hard disk path is calculated relative to the current working directory.
| Type: | String [ ] |
| Aliases: | FullName |
| Position: | 0 |
| Default value: | None |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
Specifies that the virtual hard disk is to be mounted in read-only mode.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Specifies the unique ID of a VHD set.
| Type: | Guid |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
Shows what would happen if the cmdlet runs. The cmdlet is not run.
Работа с виртуальными жесткими дисками VHD и VHDX средствами Windows
VHD — сокращение от Virtual Hard Disk, буквально «виртуальный жесткий диск». По содержанию, является аналогом настоящего жесткого диска, используя такую же структуру данных. Является стандартным форматом виртуальных жестких дисков у Microsoft Hyper-V и Microsoft Virtual PC, многие другие гипервизоры и виртуальные машины так же поддерживают работу с данным форматом виртуальных жестких дисков. VHDX является более новым форматом виртуального жесткого диска, с различными улучшениями.
Работу с VHD файлами поддерживают все версии Windows, начиная с Windows 7 и Windows Server 2008.
Работу с VHDX файлами поддерживают все версии Windows, начиная с Windows 8 и Windows Server 2012.
Использование Управление дисками
Подключение виртуального жесткого диска
- Подключить VHD/VHDX диск в систему Windows можно через Управление дисками. Для этого, достаточно просто нажать правой кнопкой мыши по иконке меню «Пуск», и выбрать пункт «Управление дисками».
- В открывшемся окне управления дисками, в верхнем меню нужно выбрать раздел «Действие», и в нем выбрать «Присоединить виртуальный жесткий диск».
- Откроется маленькое окошко, где нужно выбрать VHD или VHDX файл. В нем так же можно установить чекбокс «Только для чтения.», установка которого закроет любую возможность вносить какие-либо изменения в данный файл виртуального жесткого диска.
- После нажатия кнопки «ОК», VHD/VHDX файл будет смонтирован в систему, а в «Мой компьютер» появятся разделы виртуального жесткого диска (при условии, что у них файловая система, которую поддерживает Windows — exFAT, FAT, FAT32, NTFS или ReFS).
Отключение виртуального жесткого диска
Отключить подключенный VHD/VHDX файл можно так же через управление дисками. Для этого, нужно найти данный жесткий диск в списке подключенных дисков, и нажать на нем правой кнопкой мыши. В появившемся меню нужно выбрать пункт «Отсоединить виртуальный жесткий диск».
Использование diskpart
Запускаем diskpart (через Проводник, Выполнить или Командную строку). В нем указываем расположение VHD файла:
Для монтирования диска, нужно выполнить следующую команду:
Для размонтирования диска, нужно выполнить следующую команду:
Использование PowerShell
В PowerShell так же возможно выполнить монтирование и размонтирование виртуальных жестких дисков VHD и VHDX. Для этого, нужно запустить PowerShell от имени администратора, и выполнить следующие команды:
- Для монтирования диска:
- Для размонтирования диска:
Автоматическое монтирование VHD/VHDX-диска при загрузке Windows
В Windows 7 и Windows Server 2008 R2 появилась возможность создавать и подключать файлы виртуальных дисков (VHD/VHDX) прямо из консоли управления дисками (Disk Management). Такие виртуальные диски выглядят в системе как отдельные физические диски и могут использоваться для хранения произвольных данных. Существенный недостаток таких дисков — при каждой перезагрузке Windows приходится каждый раз вручную монтировать все VHD/VHDX файлы. Кроме того, право на монтирование файлов виртуальных дисков vhd есть только у администраторов компьютера, простые пользователи не могут самостоятельно подключить VHDx файл (каждый раз приходится вмешиваться администратору).
В этой статье мы покажем, как автоматически монтировать vhd/vhdx файл при загрузке системы, так, чтобы виртуальные диски были доступны и простым пользователям (не обладающих правами администратора)
В Windows отсутствует встроенная возможность автомонтирования vhd-файлов при перезагрузке системы, поэтому нам придется разработать собственный механизм монтирования. В этом нам поможет планировщик заданий Windows и утилита diskpart.
Итак, создадим текстовый файл (C:\Scripts\attach_vhd.txt) со следующим кодом:
select vdisk file=»C:\vhd2\w10vhd.vhdx»
attach vdisk
select part 1
assign letter=K
exit
где:
C:\vhd2\w10vhd.vhdx – полный путь к VHD или VHDX образу диска
K –буква диска, которую нужно назначить VHD образу
Данный сценарий подключает указанный vhd файл, выбирает на нем первый раздел и назначает ему данную букву диска. Если на диске несколько разделов, измените код соответствующим образом, указав номер раздела, который нужно подключать.
Запустите Windows Task Scheduler (Taskschd.msc) и создайте новое задание планировщика (Actions -> Create Task). Настройте его следующим образом:
- Вкладка General:
- Укажите имя задания (Name):automountvhdx;
- Отметьте, что он должно запускаться независимо от того, вошел пользователь в систему или нет (Runwhetheruserisloggedonornot);
- Укажите, что задание должно запускаться с максимальными привилегиями ( Run with highest privileges);
- Вкладка Triggers:
- Добавьте новый триггер запуска при загрузке (AtStartup) с настройками по-умолчанию.
- Добавьте новый триггер запуска при загрузке (AtStartup) с настройками по-умолчанию.
- Вкладка Actions:
- Создадим новое действие New:
- Действие запуск программы (Start a program);
- Программа/скрипт: diskpart ;
- В качестве аргументов программы укажем: /s«C:\Scripts\attach_vhd.txt» ;
- Создадим новое действие New:
- На вкладке Conditions снимите галку у опции «Start the task only if the computer is on AC power«.
- Сохраните изменения. Система попросит вас указать данные учетной записи, из-под которой будет запускаться задание (учетная запись должна обладать правами администратора).
Чтобы задание выполнялось от имени системы, еще раз откройте его свойства и на вкладке General нажмите кнопку Change User or Group. В окне выбора пользователя укажите system и сохраните изменения.
Теперь при следующей перезагрузке компьютера указанный виртуальный VHDx диск будет смонтирован автоматически.
Если вы хотите, чтобы виртуальный vhdx диск монтировался не в отдельную букву диска, а в папку, измените код в файле c:\Scripts\attach_vhd.txt на:
select vdisk file=»C:\vhd2\w10vhd.vhdx»
attach vdisk
select part 1
assign mount=»c:\mount»
exit
В результате выполнения данной команды виртуальный диск будет смонтирован в отдельный каталог на вашем физическом диске (в данном каталоге будет отображаться содержимое vhdx файла).
Можно смонтировать не только локальный VHD диск, но и диск из сетевого каталога через UNC путь.
select vdisk fils=»\\192.168.1.100\share\shared.vhdx»
Для тестирования работы коды вашего скрипта автоматического подключения виртуальных дисков не обязательно каждый раз перезагружать компьютер, достаточно в командной строке с правами администратора выполнить команду:
diskpart /s c:\Scripts\attach_vhdx.txt
Если ваш код не содержит ошибок, то команда подключит vhdx файл и в системе появится новый диск.
Данные способы автоматического подключения виртуальных дисков работают как в Windows 10, так и в Windows 8.1 и Win 7.
Если вы больше любите PowerShell, можно автоматически смонтировать VHDX диск с помощью следующего PoSh скрипта в автозагрузке (для управления дисками изспользуются командлеты из модуля Storage):














