Запуск установочной флешки на виртуальной машине virtualbox. Настройка загрузки с флешки в виртуальных машинах VirtualBox и VMware Workstation. Подключение внешней флешки с виртуальной машине

В статье рассмотрен вопрос о том, как проверить работает ли загрузочная флешка в VirtualBox. Я предварительно установлю и проверю работоспособность сразу нескольких флешек с разными операционными системами: Андроид, Кали Линукс и Windows. После этого проверим насколько загрузочная флешка в VirtualBox работоспособна.

Долго распаляться не буду по поводу того, как удобна мобильная операционная флешка, всегда с собой носимая. Благо, для того, чтобы любая из ОС-ей всегда была с собой, нужно всего одно устройство – USB носитель. И компьютер, на котором нам позволят флешку запустить. Остальное детали.

Но сразу после создания флешки с носимой ОС её необходимо протестировать. Для этого вполне подойдёт виртуальная машина VirtualBox. Однако небольшие трудности для некоторых составляет именно процесс создания загрузочной флешки на VB. Не мудрено – функция до сих пор не выведена разработчиками в графический интерфейс, хотя давно и абсолютно работоспособна.

Что нам понадобится?

  • флешка с установленной ОС
  • виртуальная платформа VirtualBox

Работать будем из хозяйской Windows.

ВНИМАНИЕ. Все открытые окна VirtualBox ЗАКРЫТЬ

Флешку – в порт. diskmgmt.msc из строки Выполнить попадаем в консоль Управления дисками в Windows. Смотрим, где ваша флешка в списке дисков. Обнаружить её будет легко: соответствующий размер и другой порядковый номер (физические диски Windows нумерует, напомню, начиная с 0 ). У меня один HDD (Диск 0 ) и флешка (Диск 1 ):

Собственно нам нужна только цифра, порядковый номер диска. 1 – запомним её; она появится чуть позже в конце команды на создание файла диска виртуальной машины VMDK для проверяемой флешки.

Запускаем . В ней переходим в каталог с установленной виртуальной платформой:

Cd %programfiles%\Oracle\VirtualBox

и даём команду на создание файла диска виртуальной машины VMDK для нашей флешки в корне диска С (название файла и путь расположения могут быть любыми):

VBoxManage internalcommands createrawvmdk -filename C:\флешка.vmdk -rawdisk \\.\PhysicalDrive1

Воспользуемся проводником Windows и посмотрим на файл, на месте ли:

да куда он денется-то…

Пришло время для виртуальной машины. Запустим от имени админа. И создадим новую машину вот так, с указанием на созданный файл флешка.vmdk :

Запускаем . Загрузочная флешка в VirtualBox с Андроидом на борту работает:

Сразу обращаю ваше внимание на то, что в настройках виртуальной машины в разделе Носители первым загрузочным устройством должен быть именно созданный вами файл диска виртуальной машины VMDK. Это обязательное условие, если вы захотите не просто протестировать флешку в качестве LiveCD носителя, но и захотите установить систему на виртуальную машину для полной проверки работоспособности в качестве установочной флешки. Но для этого какую бы ОС вы не пытались установить, вам понадобится для неё виртуальный жёсткий диск . Его легко создать в том же меню Носители , щёлкнув по значку Добавить жёсткий диск . И во время установки ОС на виртуальный HDD в VirtualBox указать на него. Для Андроида я выбрал так:

На что обратить внимание?

  • Если у вас возникли вопросы по установке Андроид на компьютер, обратитесь к одноимённой ссылке в абзаце выше.
  • Размеры виртуального диска при установке ОС-ей разные, но мы тестим флешку, а значит для пространства берём минимальные требования. Но вот на характеристики производительности советую не скупиться (объёмы видео и RAM возьмите побольше), чтобы избежать проблем во время установки и не грешить на работоспособность вашей загрузочной флешки.
  • После установки ОС на виртуальный диск в VirtualBox с флешки файл флешка.vmdk должен быть УДАЛЁН ИЗ СПИСКА виртуальных носителей (а то загрузка с флешки будет преследовать вас по кругу).

Я подключил usb к VirtualBox, как показано на скриншоте.

Но загрузить с USB-накопителя даже при подключении (ссылку) невозможно.

Поэтому я хотел бы знать, есть ли какие-либо другие возможности для загрузки с USB-накопителя?

Сам VirtualBox не поддерживает загрузку с USB-устройства. Для загрузки с USB-устройства требуется другой загрузчик. Следующие шаги обеспечивают один из возможных способов достижения этого:

Если все пойдет хорошо, машина должна теперь загрузиться с USB-устройства.

Поскольку VirtualBox не загружается на USB-накопители, вы можете создать файл.vmdk который указывает на ваш USB-накопитель для загрузки на него.

ПРИМЕЧАНИЕ. Вы ДОЛЖНЫ добавить свою учетную запись пользователя в vboxusers для VirtualBox, чтобы увидеть ваш USB. Вы ДОЛЖНЫ также добавить свою учетную запись в группу disk , иначе вы не сможете добавить файл.vmdk на свою виртуальную машину. В EDIT добавлены инструкции.

Во-первых, вам необходимо создать свой USB-накопитель в вашей системе и определить, что такое физический диск. Мы предполагаем, что ваш диск установлен как /dev/sdb1 . Таким образом, физическим приводом будет /dev/sdb .

Затем введите из окна терминала следующее: создать файл.vmdk , указывающий на USB-накопитель:

Vboxmanage internalcommands createrawvmdk -filename ~/usb.vmdk -rawdisk /dev/sdb

VBoxManage internalcommands createrawvmdk -filename ~/usb.vmdk -rawdisk /dev/sdb

Тогда вы должны увидеть что-то похожее на это:

RAW host disk access VMDK file /home/ravan/usb.vmdk created successfully.

Тогда все, что вам нужно сделать, это добавить файл.vmdk на виртуальную машину VirtualBox и убедиться, что вы можете его загрузить.

РЕДАКТИРОВАТЬ:

Чтобы добавить пользователя в vboxusers , выполните следующую команду:

Sudo usermod -a -G vboxusers username

Чтобы добавить пользователя в группу disk , выполните следующую команду:

Примечание. Добавление пользователя в группу дисков может быть опасным и угрозой безопасности. Это так же опасно, как и доступ к sudo для записи на необработанный диск.

Sudo usermod -a -G disk username

Затем вы ДОЛЖНЫ ОБРАТИТЬ вашу систему, чтобы изменения вступили в силу.

Перед перезагрузкой:

После перезагрузки:

Надеюсь это поможет!

Я пришел на этот пост всего несколько дней назад. Я не хочу использовать Plop Boot Manager, потому что мой USB-накопитель уже загрузочный.

Поэтому я попытался указать USB-накопитель на диск VMDK (как в ответе Терренса), создав vboxmanage internalcommands createrawvmdk -filename ~/usb.vmdk -rawdisk /dev/sdb

К сожалению, это отказалось работать … Я chmod и chown диск usb.vmdk , и поэтому я смог подключить его к VM, но он просто не работал.

Наконец, я попробовал другое решение, и это работает безупречно. Вот он (спасибо Gean Santos за исследование):

  1. Вставьте USB-накопитель и определите его (мой /dev/sdb , работает в Sabayon Linux);
  2. Создайте диск.vmdk , преобразовывая необработанное устройство (например, USB-накопитель) на диск VirtualBox

    Sudo VBoxManage convertfromraw /dev/sdb ./usb.vmdk --format vmdk

    Теперь у вас есть диск usb.vmdk созданный с вашего загрузочного USB-накопителя. Я также попытался.vmdk USB-накопитель к файлу изображения и создать диск.vmdk из файла изображения. Он работает, а также диски.vdi создали прежний путь (или из файла изображения)

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

    Sudo chown `whoami`:`whoami` ./usb.vmdk

    Теперь вам просто нужно прикрепить диск usb.vmdk к виртуальной машине. Но он должен быть прикреплен к контроллеру IDE . Я пробовал SATA без успеха.

На этом этапе все в порядке.

Просто загрузите новую виртуальную машину, нажмите F12 и выберите загрузочный диск.

Наслаждайтесь!

Самое простое решение – скопировать содержимое USB-ключа в iso-файл (ну, в следующий раз я просто загружу iso на нужную машину, в любом случае не потребуется USB-ключ)

Dd if=/dev/sdc of=myusbkey.iso

А затем добавьте этот.iso в качестве оптического диска в настройках VirtualBox, в разделе Storage, Controller: IDE (или SATA, я думаю).

Нет необходимости создавать файл.vmdk, VirtualBox поддерживает файлы.iso.

Я не хотел запускать Virtualbox как root. Я не хотел, чтобы мой пользователь был из группы дисков, имея полные разрешения для всех дисков.

Итак, вот что я получил, чтобы работать:

Узнайте, что такое SD-карта. В следующих инструкциях это sdc .

    Отключить накопитель Memory Stick

    Su chmod 666 /dev/sdc1 chmod 666 /dev/sdc VBoxManage internalcommands createrawvmdk -filename usb.vmdk -rawdisk /dev/sdc chmod 777 usb.vmdk chmod 666 /dev/sdc

    Прикрепить виртуальную машину usb.vmdk

    Chmod 666 /dev/sdc

  • Запустить виртуальный бокс
  • После завершения сбросить разрешение sdc1 для обеспечения безопасности:

    Chmod 660 /dev/sdc1

В приведенном выше вы можете увидеть, что мне приходилось несколько раз перезапускать разрешения для накопителя, потому что каждый раз он будет возвращаться к root.

Я использую Mandriva Linux, но в Ubuntu он должен быть примерно таким же

Последние несколько лет для целей настольной виртуализации я использую исключительно Oracle VirtualBox. Программа очень удобна, проста в настройке и абсолютно бесплатна. Однако есть в VirtualBox один недостаток, о котором я недавно узнал. Оказывается, что осуществить загрузку виртуальной машины с внешнего USB-носителя стандартными средствами интерфейса в VirtualBox нельзя.

Подключенная к виртуальной машине флешка нормально определяется и отображается в Проводнике. Однако выбрать ее в качестве загрузочного диска невозможно, т.к. в загрузочном меню нет такого пункта. Есть загрузка с дискеты, CD-диска и даже по сети, а вот загрузки с USB нет.

Но не все так плохо и способ загрузиться с флешки все таки нашелся, правда несколько неудобный. Для того, чтобы загрузить виртуальную машину VirtualBox с внешнего USB-носителя, необходимо создать связующий vmdk-файл. Через этот файл и будет осуществляться связь виртуальной машины с внешним USB-диском.

Процесс

Первым делом вставляем в компьютер флешку. Затем запускаем командную консоль (обязательно с правами администратора) и вводим команду diskpart . Затем командой list disk выводим список физических дисков, подключенных к системе. Опытным путем (напр. по размеру) находим флешку и запоминаем номер диска. В моем случае это диск 2. Вводим exit для выхода из утилиты diskpart.

Для создания файла *.vmdk воспользуемся консольной утилитой vboxmanage.exe, входящей в состав VirtualBox. Переходим в каталог программы:

cd ″C:\Program Files\Oracle\VirtualBox″

И создаем в папке C:\VM файл usb.vmdk:

VBoxManage.exe internalcommands createrawvmdk -filename c:\VM\usb.vmdk -rawdisk \\.\PhysicalDrive2

PhysicalDrive2 - это номер диска, который мы запомнили и под которым флешка видна в системе. Этот параметр указывает на то, с каким физическим диском связать vmdk-файл. Кстати, таким образом мы можем подключить к виртуалке любой системный диск.

На вкладке «Носители» добавляем созданный usb.vmdk в качестве виртуального диска. Добавлять можно как к IDE, так и к SATA контроллеру, особой разницы нет.

Обратите внимание на реальный размер диска. Он меньше килобайта, т.к. vmdk-файл содержит лишь данные для связи с USB-диском.

Стартуем виртуалку, жмем F12 и видим новый пункт в меню загрузки. Это и есть наша флешка.

Как загрузить флешку в Virtualbox и проверить рабочая она или нет

Привет! Сегодня мы будем учиться загружаться с флешки в Virtualbox . Это очень удобно. Например, можно протестировать загрузочную флешку или посмотреть, как загружается флешка в UEFI системе (в virtualbox есть такая возможность но её я пока не тестировал)
Оказалось, всё не так уж и супер просто. В Virtualbox без шаманизма нет такой возможности. Поэтому делаем в статье всё по шагам и у вас выйдет выставить загрузку с usb в Virtulbox .
Первым делом откройте с помощью администратора командную строку. Введите cmd , затем правой клавишей — открыть с помощью администратора

Теперь нам надо узнать какой номер нашей флешки в системе. Вставьте флешку с которой вы хотите загрузиться потом в Virtualbox в компьютер. Теперь в командной строке вводим, сперва diskpart , затем list disk


Как видно, моя флешка с которой я хочу загрузиться – это номер 2 . Запомните это вам пригодиться.
Теперь, надо создать виртуальный файл жёсткого диска, только в нашем случае это будет наша флешка. То есть, наша задача создать образ, который потом мы сможем указать в настройках Virtualbox.
Для этого, первым делом вы должны знать где именно установлен Virtualbox. Если вы устанавливали в стандартную папку ваш Virtuablox то эта папка C:Program FilesOracleVirtualBox. Лучше зайдите и проверьте ведь это важно при следующих шагах.


Теперь запускаем от администратора ещё раз командную строку. Вводим:
Сперва cd C:Program FilesOracleVirtualBox (жмём Enter)


Теперь
VBoxManage internalcommands createrawvmdk -filename C:USB-download-virtualbox.vmdk -rawdisk \.PhysicalDrive2

Где PhysicalDrive2 потому, что моя флешка это номер 2 , в вашем случае цифра ваша. C:USB-download-virtualbox.vmdk – это путь и имя файла.vmdk (виртуальный файл нашей флешки). Через 30 секунд после нажатия Enter должно появиться сообщение, что.vmdk успешно создан.


Замечательно, поехали дальше. Теперь нам надо загрузиться с нашего файла-образа флешки. Выходим из Virtualbox. Запускаем опять его, только с помощью администратора. Если вы пропустите этот шаг будет ошибка при выборе нашего файла


Открываем с помощью админа Virtualbox

Теперь, в настройках новой машины, где мы будем грузиться с флешки в Virtualbox , переходим в Настроить – Носители – Где контроллеры IDE пр. кл. мыши – Добавить жёсткий диск Выбрать существующий диск . Выбираем USB-download-virtualbox.vmdk. Жмём OK.


Самое интересное, что я когда выбирал, грузиться как жёсткий диск, у меня выбивало ошибку. Missing Mbr helper. Поэтому я выставил как Cd-rom. Надеюсь ошибок не будет при установке. Коль шо сюда обязательно отпишу.
В общем я для вас записал видео где всё понятно и видно и всё выходит. Кстати таким же образом можно выставить внешний hdd если он загрузочный. Спасибо за внимание!

Ошибки и решение загрузки с Usb в Virtualbox. Missing MBR Helper.


Сперва я подумал, как вы, наверное, что загрузочная запись повреждена. Но, как такое может быть если флешка загрузочная везде работает (опробована так сказать в деле 100 раз), а в Virtualbox нет. А на моей флешке все инструменты есть для решения практически всех проблем. Разве, что ремонтировать пылесос она не умеет =D. Итак, методом проб и ошибок.
Выставить надо вот так. Я не знаю почему. Но, когда я сменил SATA1 на SATA0 эта ошибка исчезла у той же флешки. Кстати, после того, как выставил грузиться с IDE (аля Сидиром) у меня не загрузился ни один установщик, ничё. Поэтому я продолжил копать. Вот как надо выставить, чтобы заработало без ошибки Missing MBR Helper.




Пробую установку Xp. Дошло до установки и разбивки жёсткого диска. Учитывая, что это Xp. Когда доходит до этого момента без ошибок, то процентов на 80 система уже успешно ляжет. Я продолжать не буду.


Начну 7-ку. Пока всё гладко




Супер. Пробую разбить диск. Супер. Появилась кнопка Далее. Я мастер шеф. Пойду выпью кофе. Я доволен. Продолжаем


И тут бах. Ошибка. Да сколько ж можно


Во время работы виртуальной машины произошла ошибка! Подробности ошибки приводятся ниже. Вы можете попытаться исправить ситуацию и возобновить работу виртуальной машины.
The I/O cache encountered an error while updating data in medium «ahci-0-0» (rc=VERR_ACCESS_DENIED). Make sure there is enough free space on the disk and that the disk is working properly. Operation can be resumed afterwards.Подумал я, может кэш включить надо. Включаю


Смотрим. Вроде пошло. И снова бац. Да, что ж такое то =D


Пробую Live Cd запустить. Ура. Хоть это пошло дело. Но, практически на загрузке, машина ловит статус прервана. Совсем не то, что я думал =(. Я уже накрутил себе в голове, сейчас я установлю систему и буду ковырять через флешку. Облом короче…
В общем можно смело подвести итог

  1. Мне так и не удалось установить систему с флешки, это значит, что продемонстрировать вам флешку я не смогу
  2. Любая запущенная с флешки LiveCD до загрузки срывается, и машина Virtualbox гаснет
  3. Метод, как загрузить флешку с Virtualbox годится но НЕ ПРАКТИЧЕН
  4. Если есть предложения, вы знаете как устанавливать с флешки систему (с мультизагрузочной флешки на Virtualbox пишите в комментариях)
  5. Статья считается не полной ибо до конца не рабочая

В этой заметке я расскажу, как подключить USB диск в виртуальную машину так, чтобы гостевая система воспринимала его как обычный жёсткий диск .

Этот трюк позволит не только загружаться с установочного USB — что, на мой взгляд, довольно бессмысленно, поскольку на флешку записывается.ISO образ, которой намного проще подключить к виртуальному компьютеру в VirtualBox. Если подключить USB диск или флешку к гостевой системе в качестве обычного диска, то можно делать такие интересные вещи как:

Если у вас нет возможности подключить SATA диск непосредственно в компьютер — например, к ноутбуку — но вам очень нужно загрузиться именно в операционную систему, которая развёрнута на нём, то описанный здесь трюк поможет это сделать: через USB переходник подключите SATA диск к компьютеру, а затем USB диск подключите к виртуальной машине в качестве обычного диска, как это показано в этой инструкции.

По поводу второго пункта — установка Windows на USB носитель — если вы хотите установить Linux на флешку (не записать Live-образ, а именно установить полноценную систему), то для установки необязательно проделывать показанный здесь трюк — поскольку Linux прекрасно устанавливается на переносной носитель. Но в Windows стоит запрет для установки на USB диски и флешки.

Я покажу как загрузиться с USB в Windows и Linux. Принцип одинаковый в обеих этих операционных системах, но чуть различаются команды из-за специфики ОС.

Как в VirtualBox загрузиться с USB в Windows

Подсоедините USB флешку или диск к компьютеру. Затем нажмите Win+r и выполните diskmgmt.msc .

Найдите вашу флешку и запомните номер диска:

К примеру, на моём скриншоте флешка имеет номер 2.

Закройте все окна VirtualBox, если они открыты.

В открывшемся окне введите:

Теперь перейдите в папку, где у вас установлена VirtualBox. Если эта программа установлена в директорию по умолчанию, то команда для перехода:

Cd %programfiles%\Oracle\VirtualBox

Если вы выбрали другое расположение для VirtualBox, то отредактируйте предыдущую команду соответствующим образом.

Теперь в командной строке вставьте следующую команду, в которой замените # на номер диска, который мы посмотрели чуть выше, затем нажмите Enter:

VBoxManage internalcommands createrawvmdk -filename C:\usb.vmdk -rawdisk \\.\PhysicalDrive#

Например, у меня это второй диск, тогда команда выглядит так:

VBoxManage internalcommands createrawvmdk -filename C:\usb.vmdk -rawdisk \\.\PhysicalDrive2

Если всё прошло успешно, должна появиться надпись:

RAW host disk access VMDK file C:\usb.vmdk created successfully.

Обратите внимание, что вы можете заменить C:\usb.vmdk на любое расположение файла по своему желанию.

Эта команда создаёт файл диска виртуальной машины (VMDK) указывающий на физический диск, который вы выбрали. Когда вы загружаете VMDK файл в качестве диска в VirtualBox, то VirtualBox на самом деле будет иметь доступ к физическому диску.

Теперь откройте VirtualBox от администратора — это обязательно, иначе не сработает как надо. Для этого нажмите кнопку Пуск , наберите VirtualBox и выберите «Запуск от имени администратора »:

VirtualBox может иметь доступ к сырым дисковым устройствам только с правами администратора.

Теперь в VirtualBox создайте новую виртуальную машину, выберите соответствующую операционную систему и когда дойдёт дело до выбора жёсткого диска, вместо создания нового, выберите Использовать существующий виртуальный жёсткий диск :

Теперь откройте файл C:\usb.vmdk (или другой, если вы сохранили его в другом месте или под другим именем):

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

Обратите внимание, что USB устройство должно быть первым жёстким диском в вашей виртуальной машине VirtualBox, иначе загрузка не произойдёт. Если вы подсоединяете новый USB диск к уже существующей машине, то попробуйте изменить порядок носителей в настройках этой машины, либо выбрать соответствующий диск в начале загрузки.

Как в VirtualBox загрузиться с USB в Linux

Чтобы понимать принцип, прочитайте предыдущий раздел про Windows. В Linux, чтобы узнать имя USB диска выполните команду:

Sudo fdisk -l

В моём случае у диска имя /dev/sdb .

Для создания файла виртуального диска, указывающее на реальный диск, выполните команду вида:

Sudo VBoxManage internalcommands createrawvmdk -filename /root/usb.vmdk -rawdisk /dev/sd#

Где вместо # впишите букву соответствующего диска. Пример для моих условий:

Sudo VBoxManage internalcommands createrawvmdk -filename /root/usb.vmdk -rawdisk /dev/sdb

В этой команде вы можете заменить /root/usb.vmdk на другое расположение по своему усмотрению.

Для запуска VirtualBox с правами администратора выполните команду:

Sudo VirtualBox

Всё остальное — создание виртуальной машины и выбор в качестве жёсткого диска существующий виртуальный диск — в точности как в Windows.