15 апр. 2012 г.

Hyper-V. Идентрификатор виртуального диска

Закончилось место на диске с виртуальными машинами, и дифференциальные диски не могли "объединиться". Я остановил виртуалки - часть виртуальных дисков перенес на другой диск, чтобы диски могли объединиться - это помогло. Но когда я вернул на место те образы которые я переносил - у этих образов пропали уникальные ИД и машины не могли с них запуститься!
Помогла вот эта статья - http://www.it-e.ru/page146.html
В Hyper-V каждая виртуальная машина имеет свой уникальный ИД, который используется для определения прав на конфигурационные файлы и диски. Когда вы измените эти разрешения, то при старте виртуальной машины получите сообщение о невозможности старта виртуальной машины, содержащий примерно такое сообщение:
IDE/ATAPI Account does not have sufficient privilege to open attachment ‘e:\vm\test\test.vhd’. Error: ‘General access denied error’
Account does not have sufficient privilege to open attachment ‘e:\vm\test\test.vhd’. Error: ‘General access denied error’
Исправляется следующим образом:

  • Скопируйте ид машины, которая не запускается.
  • Найдите файл виртуального диска.
  • Теперь выполним команду: icacls “my-vhd.vhd” /grant “NT VIRTUAL MACHINE\ИД виртуальной машины”:F. Имя файла и ИД виртуальной машины замените на свои.
  • Если у вас windows на русском, то команда будет выглядеть немного иначе и смешнее =): icacls “my-vhd.vhd” /grant “ВИРТУАЛЬНАЯ МАШИНА NT\ИД виртуальной машины”:F, то есть русифицируем команду.
  • Понятно, что если у вас несколько дисков, то можно использовать *.

Комментариев нет: