Сегодня столкнулся с интересной ситуацией: Нужно экспортировать виртуальную машину Hyper-V, а на локальном диске уже нет места. Ну, думаю, экспортну в сетевую папку. Расшариваю папку, прописываю права на доступ для нужных пользователей, запускаю экспорт … И получаю сообщение об ошибке «Failed to copy file from source to network share: General access denied error (0x80070005)»
Начинаю разбираться и нахожу вполне логичное хотя сразу и не всегда очевидное решение. Оказывается, при запуске экспорта машины в сетевую папку данные записываются от учетной записи самого Hyper-V хоста.
Таким образом, для решения проблемы нужно просто прописать разрешения на запись в сетевую папку для учетной записи компьютера Hyper-V.
Если вы вдруг забыли как это делается:
Обновление разрешений уровня NTFS :
- На сервере куда собираетесь экспортировать , правый клик мыши по нужной папке и выбираем «Свойства».
- Вкладка «Безопасность».
- Кнопка «Изменить» -> Кнопка «Добавить».
- Клик «Типы объектов» и отметить тип «Компьютер»
- В диалоговом окне «Введите имена выбираемых объектов» впишите имя хоста Hyper-V и кликните «Проверить имена»
- Для учетной записи Hyper-V поставьте в колонке «Разрешения» Полный доступ и нажмите Ок.
Обновление разрешений уровня сетевого доступа:
- На сервере куда собираетесь экспортировать , правый клик мыши по нужной папке и выбираем «Свойства».
- Выбираем закладку «Доступ» -> Клик «Расширенная настройка»
- В диалоговом окне «Расширенная настройка» клик «Разрешения» -> «Добавить».
- Клик «Типы объектов» и отметить тип «Компьютер»
- В диалоговом окне «Введите имена выбираемых объектов» впишите имя хоста Hyper-V и кликните «Проверить имена».
- Для учетной записи Hyper-V поставьте в колонке «Разрешения» Полный доступ и нажмите Ок.
После этого повторяем попытку и наслаждаемся экспортом виртуальной машины без ошибок.
УРА !!! спасибо за подсказку, было бы интересно узнать каким образом вы определили каких прав не хватает, может включение аудита на папку? но видимо как-то проще.
Если я правильно помню, то где-то в книжках было написано, что Hyper-V делает экспорт под системной учеткой. Соответственно, чтобы выгрузить VM по сети нужно прописать разрешения для учетной записи компьютера.
А у меня нет возможности выбрать «Компьютер» сервер не в домене. Что делать?
Т.к. компьютер не в домене, то нет доверия между компьютерами. Как вариант, можно создать локальную учетку на Hyper-V хосте, запускать из под нее службу. И точно такую же учетку создать на второй машине, куда делаете экспорт. В теории, проблем быть не должно.