Я пытаюсь перенести систему VMPlayer на VirtualBox, но миграция не работает (я уже потратил часы, пытаясь найти небольшое количество решений, которые люди предложили и в итоге отказались). В качестве обходного пути я пытаюсь выполнить миграцию вручную, установив Windows в VirtualBox, скопировав важные файлы, а затем отбросив систему VMPlayer.

Проблема в том, что я не могу получить доступ к файлам. Я не могу скопировать файлы из виртуальной машины, потому что они используются, поэтому я попытался выключить виртуальную машину и смонтировать ее жесткий диск в качестве виртуального тома в хост-системе. В старые времена, когда я использовал FAT32, это всегда работало очень хорошо, но диск виртуальной машины теперь NTFS, поэтому я не могу получить доступ к файлам.

Вот упрощенная схема ситуации:

  • Необходимые файлы хранятся у пользователя Bob в XP VM
  • Диск виртуальной машины хранится на хосте в C:\VMs\XP.vmdk
  • Диск виртуальной машины успешно смонтирован на хосте как Z:\ via vmware-mount.exe z: c:\vms\xp.vmdk
  • Хост правильно видит диск виртуальной машины как том NTFS Z:\
  • Невозможно получить доступ к файлам в Z:\Documents and Settings\Bob (из-за разрешений)
  • Выполнение takeown /f z:\documents and settings\bob из командной строки без повышенных прав возвращает следующую ошибку, как если бы диск не был NTFS (даже если на хосте Windows 7 и гостевой XP оба говорят, что это так):

    ОШИБКА: владение файлом не может быть применено в небезопасных файловых системах; нет поддержки ACL.

  • Выполнение этой же команды из командной строки с повышенными привилегиями также не работает, поскольку она вообще не видит Z:\ !
  • Использование вкладки « Безопасность » из проводника Windows не работает, потому что каждое действие (предоставление прав доступа, владение и т.д.) Всегда дает ошибку разрешения

Кто-нибудь знает, что не так (почему я получаю такие противоречивые результаты) и как с этим бороться?

1 ответ1

0

tl; dr не забудьте смонтировать виртуальный диск из командной строки с повышенными правами и выполнить всю очистку из той же самой подсказки.

При попытке взглянуть на детали того, что работает, а что нет, а также когда и как, мне вдруг пришло в голову, что главное - я вообще не вижу подключенный том из командной строки с повышенными правами. Я смонтировал виртуальный диск из обычной командной строки, и хотя нет никакого смысла в том, что повышенная командная строка не сможет увидеть что-то, созданное из обычной (ограниченной) учетной записи, поскольку учетная запись администратора должна иметь превосходный доступ, я Я решил попробовать смонтировать виртуальный диск из привилегированной строки.

И вуаля!

Теперь у меня был доступ к смонтированному виртуальному диску из командной строки с повышенными правами. Теперь я мог удалять файлы, выполнять дефрагментацию, стирать свободное пространство, отключать монтирование и легко уменьшать объем.

Я до сих пор не понимаю, почему учетной записи администратора не удалось увидеть подключенный диск или почему можно смонтировать виртуальный диск из ограниченной учетной записи, но по крайней мере это работает.

NB . Вы должны выполнять всю свою работу по очистке из того же привилегированного приглашения, что и тот, в который вы смонтировали виртуальный диск. Я обнаружил трудный способ, что если вы закроете эту командную строку, то при открытии новой, даже с повышенными правами, больше не будет доступа к подключенному тому (я мог только отсоединить его). Действительно странно, что подключенный том (использующий vmware-mount.exe) имеет такие проблемы с доступностью.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .