Вопрос или проблема
У меня на сервере подключены 2 VHD. Я знаю, где хранится один из VHD. Но я понятия не имею, где физически находится второй.
Я много гуглил, но не нашел простого метода получить эту информацию…
Должен быть способ найти фактическое местоположение VHD на локальном компьютере или в сети с помощью стандартного графического интерфейса Windows, PowerShell, cmd или реестра.
Кто-нибудь знает, как получить это значение?
Спасибо!
Я не смог найти простого способа сделать это; даже консоль управления дисками не покажет физический путь к VHD при проверке его свойств.
Однако, если выбрать диск и нажать на “Отключить VHD”, вы наконец сможете его увидеть:
Команда diskpart может показать путь подключенных VHD. Выполните следующие команды в командной строке или PowerShell.
diskpart
list vdisk
Пример вывода:
VDisk ### Disk ### State Type File
--------- -------- -------------------- --------- ----
VDisk 0 Disk 2 Attached not open Expandable F:\Test.vhd
Старый вопрос, но это возможно и с помощью PowerShell:
> Get-Disk |
Where-Object { $PSItem.Manufacturer -like 'Msft*' -and $PSItem.Model -like 'Virtual Disk*' } |
Select-Object FriendlyName,Location
FriendlyName Location
------------ --------
Msft Virtual Disk C:\test.vhdx
Проверено с PowerShell 5.1 на Windows 10 и Windows Server 2016.
Ответ или решение
Вопрос о том, как получить физический путь смонтированного VHD на Windows Server 2008 R2, является довольно распространенной задачей среди системных администраторов и специалистов в области информационных технологий. Это вызвано тем, что стандартные инструменты Windows не всегда предоставляют прямую информацию о физическом местоположении VHD. Давайте рассмотрим различные методы и шаги, которые помогут решить эту проблему.
Теория
Виртуальные жесткие диски (VHD) активно используются в средах виртуализации и для резервного копирования данных, так как они обеспечивают удобный способ хранения и управления большими объемами данных. Однако, после монтирования VHD через утилиты Windows, такие как Диспетчер дисков, не всегда можно сразу понять, где физически расположены файлы VHD. Это особенно актуально, если доступ к таким файлам необходимо получить через сеть или если они были перемещены в процессе работы.
Пример
Для иллюстрации проблемы рассмотрим ситуацию: у вас на сервере смонтированы два VHD-диска. Вы знаете местоположение одного из них, но местоположение второго теряется. Для решения этой проблемы можно воспользоваться несколькими подходами с использованием командной строки, PowerShell, утилиты Diskpart и системы реестра Windows.
Применение
-
Использование Diskpart:
Diskpart — это утилита командной строки, которая позволяет управлять дисками и томами. Она может использоваться для получения информации о VHD-дисках. Для этого выполните следующие команды:
diskpart list vdisk
При выполнении этих команд вы получите список виртуальных дисков с указанием их состояния, типа и пути к файлу. Например:
VDisk ### Disk ### State Type File --------- -------- -------------------- --------- ---- VDisk 0 Disk 2 Attached not open Expandable F:\Test.vhd
Эта информация поможет вам найти местоположение VHD на физическом диске.
-
Использование PowerShell:
PowerShell предоставляет мощные возможности для администрирования и управления сервером. Вы можете использовать следующие команды для получения информации о виртуальных дисках:
Get-Disk | Where-Object { $PSItem.Manufacturer -like 'Msft*' -and $PSItem.Model -like 'Virtual Disk*' } | Select-Object FriendlyName,Location
Эта команда фильтрует список дисков, выделяя только те, которые являются виртуальными, и отображает местоположение файла VHD.
-
Управление через графический интерфейс:
В случае, если вы предпочитаете графический интерфейс, вы можете использовать Диспетчер дисков. Хотя он не показывает путь к VHD напрямую, вы можете попытаться снять диск через опцию "Detach VHD". Перед удалением система спросит вас о подтверждении действия и покажет путь к файлу VHD.
-
Обращение к реестру:
Иногда информация о виртуальных дисках может быть найдена в реестре Windows. Для этого откройте редактор реестра (regedit.exe) и перейдите к разделу:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\vhdsvc
Здесь могут находиться сведения о смонтированных виртуальных дисках, хотя иногда информация бывает неполной или сложно доступной.
Заключение
Каждый из перечисленных методов имеет свои преимущества и недостатки, и выбор подходящего зависит от ваших предпочтений и конкретной ситуации на сервере. Использование командной строки и PowerShell обеспечивает более глубокий и детализированный контроль, тогда как графический интерфейс может быть удобнее для пользователя, не обладающего обширным опытом администрирования Windows Server.
Надеюсь, изложенные методы помогут вам определить местоположение ваших VHD-дисков и упростят управление виртуальными окружениями на Windows Server 2008 R2.