You are here

Virtual Box - загрузка виртуальной системы с реального, физического флеш привода

Virtual Box - загрузка виртуальной системы с реального, физического флеш привода. 

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

Но вот беда, VirtualBox даже на 25.01.2014 года в версии 4.3.6 так и не умеет это делать из графического интерфейса(скорее всего проделки маркетологов) и что же делать ? 

Гемморойный вариант, это создать из флеш диска ISO образ и подрубать его к Virtual Box штатными её средствами. Конечно если надо так сделать 1 раз, это не проблема как таковая (если кто не умеет, просите в комментариях, расскажу отдельной подробной статьёй), но в моём случае мне может не понравится результат и я тут же буду переделывать этот флеш диск и потом опять делать ISO для теста... это знаете ли...

Потому пользуемся интересной возможностью, флеш диск можно подрубить к Virtual Box путём создания файла, так сказать "зеркала" реальной флешки, делается это такой командой

C:\Program Files\Oracle\VirtualBox\VBoxManage.exe internalcommands createrawvmdk -filename c:\virtual_box\usb.vmdk -rawdisk \\.\PhysicalDrive1
где
C:\Program Files\Oracle\VirtualBox\VBoxManage.exe - путь куда установлена виртуал бокс.
internalcommands - некая команда, для наших целей нужна :)
createrawvmdk - тоже нужная команда, как понимаете создаёт raw диск формата vmdk Смеюсь
-filename - ключ после которого задаём имя файла
c:\virtual_box\usb.vmdk - место, где создать файл, будьте осторожны с кириллицей и пробелами в пути, в случае ошибок, пробуйте урезать путь вообще до C:\usb.vmdk
-rawdisk - создание raw диска, как я понимаю на любительском уровне, это создание диска из физического устройства.
\\.\PhysicalDrive1 - это путь в системе (не путать с C:\ и т.п. путями), по которому система видит нашу флешку, узнаётся он при помощи программы diskpart, если не знаете как, просите в комментариях расскажу, в двух словах, запускаете в windows программу diskpart (с адм. правами), далее вводим list и по размеру диска, находим такой же путь для нашей флешки, в русской редакции будет написано ДИСК1 это и будет \\.\PhysicalDrive1, у вас может быть иным.

Я столкнулся с тем, что у меня выскакивали ошибки:

C:\Program Files\Oracle\VirtualBox>VBoxManage.exe internalcommands createrawvmdk -filename c:\virtual_box\usb.vmdk -rawdisk \\.\PhysicalDrive1
VBoxManage.exe: error: Cannot open the raw disk '\\.\PhysicalDrive1': VERR_ACCESS_DENIED
VBoxManage.exe: error: The raw disk vmdk file was not created

Вероятно, такое могло быть вызвано тем, что у меня в virtual box этот флеш диск был подключен :). А так же я постарался закрыть все возможные окна с этим диском и закрыл саму программу Virtual Box (графический интерфейс, окошко).

После этого выскочила другая проблема :( :

C:\Program Files\Oracle\VirtualBox>VBoxManage.exe internalcommands createrawvmdk -filename c:\virtual_box\usb.vmdk -rawdisk \\.\PhysicalDrive1
VBoxManage.exe: error: Failed to create the VirtualBox object!
VBoxManage.exe: error: Code CO_E_SERVER_EXEC_FAILURE (0x80080005) - Server execution failed (extended info not available)
VBoxManage.exe: error: Most likely, the VirtualBox COM server is not running or failed to start.

Сейчас буду искать, как это решить...
... потратив где-то минут 30, я решил этот гемморой для вас :)

Узнал, это известный баг,  на багтрекере VirtualBox это тикет №11307

Решение этой проблемы выглядит следующим образом: необходимо обязательно проверить, что командную строку вы запустили с Администраторскими правами, проверить это можно например попытвшись создать папку в каталоге windows.
А так же нужно запустить графическую оболочку VirtualBox так же с Адинистративными правами, не забываем так же про рекомендации выше, закрыть программы использующие диск и отключить в VirtualBox везде USB.

После проделанных манипуляций я получил вот такой результат: c:\Program Files\Oracle\VirtualBox>VBoxManage.exe internalcommands createrawvmdk -filename c:\virtual_box\usb.vmdk -rawdisk \\.\PhysicalDrive1
RAW host disk access VMDK file c:\virtual_box\usb.vmdk created successfully.

Чего и вам желаю, вопросы задавайте в комментариях.

 

Add new comment

Редактор TinyMCE

  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <p> <br> <img> <hr> <blockquote> <iframe>
  • Web page addresses and e-mail addresses turn into links automatically.

Чистый текст

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.
CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.
Image CAPTCHA
Enter the characters shown in the image.