Share via


Экспорт Hyper-V машин в File Share

В процессе подготовки к Visual Studio Launch 2010 в России нашей команде было необходимо создать три идентичных сервера Hyper-V с всеми виртуальными машинами которые мы в дальнейшем будем показывать (или уже показали :-) на самом мероприятии. Тот план который у нас был подразумевал что мы сконфигурируем и отладим все на одной из машин а потом перенесем все виртуалки на другие два сервера через экспорт.

Немножко увлекшись процессом и желанием показать все что можно, мы забили практически под завязку 500 гигабайтный винчестер первого сервера. Ну и вчера вдруг выяснилось что экспорт виртуальных машин на сетевой диск почему то не работает. Точнее он прерывается с невнятным сообщением “The system has detected a possible attempt to compromise security". Стали соображать с Андреем Бешковым что же тут не так. Было похоже что процесс который пишет в каталог на соседней машине пытается прописать в ACL что то, что сильно не нравится целевому серверу. Причем нюх подсказывал что процесс этот - System.  Не очень красивый но работающий способ экспортировать машины по одной через USB диск как то заработал, но сегодня под вечер я понял что у меня есть унылая перспектива провести тут всю ночь перенося по две машины за раз.

Поэтому возникло желание все-таки найти рецепт, так как по этой проблеме есть одна заметка в KB https://support.microsoft.com/kb/938457 которая как вы понимаете, в нашем случае не помогла.

Собственно еще раз повторю смысл на схеме:

image

 

С серверах Hyper-V A в расшаренный каталог сервера Hyper-V B была попытка сделать экспорт и это все прерывалось с ошибкой приведенной выше. Сервера Hyper-V находились в едином домене, с небольшим нюансом – домен контроллер был тоже виртуальной машиной.

Решение

Для того чтобы это все работало, на сервере куда экспортируется виртуальная машина надо в разделе Advanced Permissions добавить права доступа учетной записи компьютера который будет туда вести запись. Операция очень не очевидная, но обязательная. Выбираем в свойствах расшаренной папки Advanced Sharing/Permissions/Add и далее нажимаем Object Types в которых обязательно выбираем “Computers”

 

image

И после этого находим имя компьютера Hyper-V A, добавив ему Full Control на доступ к этому каталогу.

После этого операция экспорта будет проходить нормально, но есть еще один нюанс. При инициализации процесса экспорта в сетевой каталог у вас должен быть “живой” контроллер домена. Чуть позднее его можно на время кэширования SID погасить и это не помешает далее делать экспорт даже при  не работающем DC.