В статье рассмотрен вопрос о том, как проверить работает ли загрузочная флешка в 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 должен быть УДАЛЁН ИЗ СПИСКА виртуальных носителей (а то загрузка с флешки будет преследовать вас по кругу).
Все популярные гипервизоры для Windows — Hyper-V
, VirtualBox
, VMware
– предусматривают запуск виртуальных машин (ВМ)
с загрузочных ISO
-образов и флешек. Запуск ВМ
с последних не в каждом случае будет процессом без заморочек: без танцев с бубном с флешек UEFI
запускаются только ВМ
на базе ПО
EFI
в программах VirtualBox
и VMware
. Как упростить запуск ВМ с флешек в остальных случаях?
Для этого можно создать так называемую виртуальную флешку – всё содержимое реального USB -носителя перенести на виртуальный жёсткий диск и, соответственно, запускать ВМ с него. Но содержимое необходимо переносить вместе со структурой физической флешки — чтобы виртуальный диск унаследовал все разделы, если их несколько (например, в случае с Mac OS или Chrome OS) , а также атрибуты загрузочного устройства (если это не носитель UEFI) . Сделать это можно как минимум двумя способами, описанными ниже.
Все действия в нашем случае будут проводиться с . В других программах для виртуализации необходимо действовать по аналогии.
1. Программа R-Drive Image
Первый способ создания виртуальной флешки – это перенос структуры и содержимого реального USB -носителя на виртуальный диск с помощью программы-бэкапера . Открываем параметры существующей ВМ и кликаем .
Добавляем ещё один диск.
Тип контроллера оставляем по умолчанию.
Создаём новый диск. Указываем его размер: пусть он будет примерно таким, как размер флешки, но немногим всё же пусть отличается. Это нужно чтобы не спутать устройства при клонировании. Сохраняем в виде одного файла.
Указываем путь размещения. Жмём .
Запускаем ВМ , подключаем к ней реальную флешку. В гостевой ОС устанавливаем триал -версию программы . В её окне выбираем «Копировать Диск на Диск» .
В графе «Источник» выбираем реальную флешку. В графе «Приемник» — только что созданный виртуальный диск.
И – «Начать» .
По завершении клонирования выходим из программы.
Теперь в проводнике гостевой ОС у нас появилось два идентичных устройства.
Можем отключить реальную флешку от ВМ . Равно как и можем отключить виртуальный диск от текущей ВМ и использовать его для запуска других ВМ .
2. Программа Rufus
Второй способ создания виртуальной флешки – это использование возможностей программы Rufus 3.1 . В обновлённой версии 3.х эта программа, в довесок к существующим функциям создания загрузочных USB -устройств, научилась клонировать реальные флешки в файлы VHD . А VHD совместим и с Hyper-V , и с VirtualBox , и VMware . Запускаем Rufus 3.1 в хост-системе. Выбираем нужный USB -носитель, если их несколько подключено, в графе «Устройство» . Далее жмём кнопку в виде дискетки.
Указываем путь хранения файла VHD .
Ждём завершения операции и закрываем Rufus .
3. Подключение виртуальной флешки и запуск с неё
Итак, виртуальная флешка создана, как её подключить к ВМ и, соответственно, запустить?
В параметрах ВМ кликаем жёсткий диск .
Выбираем существующий.
В окне проводника указываем путь к папке хранения файла VHD . В графе отображения файлов ставим . И кликаем нашу виртуальную VHD -флешку.
На EFI -машинах входим в BIOS – либо используем кнопку на панели инструментов гипервизора, либо при запуске ВМ жмём F2 .
В окне загрузчика выбираем Hard Drive с тем номером, под которым он числится в общем перечне подключённых виртуальных дисков, но в исчислении с нуля. В нашем случае виртуальная флешка является вторым диском ВМ , потому в EFI -прошивке она значится как Hard Drive 1.0 .
На обычных ВМ , созданных на базе эмуляции BIOS Legacy , чтобы загрузиться с виртуальной флешки, необходимо в параметрах ВМ указать её первым жёстким диском. Нужно удалить все имеющиеся диски машины и добавить их заново, указав виртуальную флешку первой.
В этой заметке я расскажу, как подключить USB диск в виртуальную машину так, чтобы гостевая система воспринимала его как обычный жёсткий диск .
Этот трюк позволит не только загружаться с установочного USB — что, на мой взгляд, довольно бессмысленно, поскольку на флешку записывается.ISO образ, которой намного проще подключить к виртуальному компьютеру в VirtualBox. Если подключить USB диск или флешку к гостевой системе в качестве обычного диска, то можно делать такие интересные вещи как:
- загрузка с физического SATA диска через USB переходник
- установка Windows на 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.
Привет друзья! Огромное число пользователей персонального компьютера используют . Дело в том, что это очень удобно, вы можете установить на виртуальную машину любую операционную систему (гостевую) и пользоваться ей как настоящей, инсталлируйте на неё все ваши любимые программы и пользуйтесь ей как обычной системой, если вы заразите её вирусами или по каким-либо причинам она у вас перестанет загружаться, то вы очень просто восстановите её из бэкапа или установите заново, всё это произойдёт без ущерба вашей основной операционной системе (хостовой), установленной на ваш компьютер.
В процессе работы с виртуальной машиной у вас может появиться (и не раз) потребность загрузить её с загрузочной флешки, например, чтобы проверить, является флешка загрузочной или нет. Общепринятый ручной способ создания файла USB.vmdk, связующего флешку и виртуальную машину, не является самым простым, поэтому я предлагаю вам воспользоваться очень простой программой Virtual Machine USB Boot 1.5, уверен, что после прочтения статьи вы удивитесь, как просто она работает. Но в работе программы, особенно с последней операционной системой Windows 10 есть нюансы, так что читайте статью внимательнее.
Итак, идём на официальный сайт утилиты и скачиваем нужный вам установщик.
http://reboot.pro/files/download/339-virtual-machine-usb-boot/
Можете скачать портабельную версию программы, а можете скачать установщик.
Я скачаю портабельную версию, её можно запустить прямо с флешки (на всякий случай выкладываю её на своём облачном хранилище).
После скачивания запускаем программу Virtual Machine USB Boot 1.5.
В главном окне программы жмём Add (Добавить).
В пункте VM name жмём на стрелочку
и выбираем в выпадающем списке название виртуальной машины, которую мы хотим загрузить с флешки. На моём ноутбуке две виртуальные машины: Windows 10 и Windows 7,
я хочу загрузить с флешки Windows 10 , поэтому выбираю в списке её.
В пункте Drive to add and boot выбираю загрузочную флешку.
ОК .
Важно : теперь, если у вас запущена VirtualBox, её надо закрыть, так как виртуальную машину будет запускать программа Virtual Machine USB Boot 1.5.
Жмём START .
Запускается виртуальная машина и выходит ошибка: FATAL: No bootable medium found! System halted .
Друзья, дело в том, что программа Virtual Machine USB Boot 1.5 немного некорректно работает с последней версией виртуальной машины VirtualBox - 5.0.14 . и не создаёт автоматически IDE-контроллер для файла vmdk.
Примечание : Для загрузки VirtualBox с USB-флешки программа Virtual Machine USB Boot 1.5 специально создаёт vmdk-файл, именно этот файл соединяет виртуальную машину с USB-флешкой. Данный файл vmdk создаётся в личной папке программы: C:\Users\Имя пользователя\VirtualBox VMs\Windows 10 (название виртуальной машины).
Чтобы не было ошибки «FATAL: No bootable medium found! System halted» при загрузке виртуальной машины с флешки, нам самим нужно создать IDE-контроллер для файла vmdk.
Жмём на кнопку Носители .
Жмём на кнопку в форме ромбика и выбираем Добавить IDE-контроллер .
Контроллер IDE добавлен.
Запускаем программу Virtual Machine USB Boot 1.5 заново
Есть у меня компьютер с которым я постоянно работаю и развлекаюсь, в качестве операционной системы на нем крутится Windows 7. Так же у меня имеется переносной USB винчестер, на который я подшаманил в качестве загрузочной ОС Ubuntu Linux. Я её использую как “спасательную” операционку, типа Live CD, и иногда в ней работаю. В общем, подумал я, что было бы не плохо иметь возможность загружать эту ОСь в VirtualBox. Понасоскребав различных инструкций из мануалов и интернетов я составил свой рецепт, как это делать.
И так, запускаем в VirtualBox Ubuntu Linux установленную на USB HDD, как обычную виртуальную машину. Кстати, для флешек этот рецепт так же подходит.
###Дано: * Компьютер с Windows 7 x64 * Загрузочный USB HDD с Ubuntu 12.04TLS
###Задача:
Запустить Ubuntu, установленную на USB Hard Disk Drive, внутри VirtualBox и пользоваться двумя системами параллельно.
###Решение:
Для начала нужно запустить коммандную строку (консоль, cmd.exe) от имени администратора (!!! ОБЯЗАТЕЛЬНО!!!) , если вы используете Windows 7 или Vista.
И выполнить в ней следующие три команды. C: cd "%PROGRAMFILES%\..\Program Files\Oracle\VirtualBox\" VBoxManage internalcommands createrawvmdk -filename "%USERPROFILE%\USB-HDD-connector.vmdk" -rawdisk \\.\PhysicalDrive1
###Теперь рассмотрим эти команды подробнее:
Первая строка вам понадобится в случае если текущий путь в консоли начинается с раздела отличного от того, в который инсталлирован ваш VirtualBox.
Вторая строка определяет директорию в которой будут выполняться следующие команды. В моем случае - это C:\Program Files\Oracle\VirtualBox\ ”, так как моя программа виртуализации установлена в папку, которую предлагают для установки её разработчики.
Третья команда создает файл USB-HDD-connector.vmdk , который будет связывать наш внешний HDD с операционной системой и VirtualBox. Именно этот файл и нужно будет добавить как первичный диск для загрузки вашей виртуальной машины. НО! Прежде чем выполнять эту команду, нужно уточнить номер, под которым ваш внешний жесткий диск известен системе.
###Как узнать номер диска с которогу вы хотите загружаться?
А очень просто! Для этого нужно открыть панель “управление компьютером” раздел “управление дисками”. Панель вызвать можно двумя способами:
Кликнуть правой кнопкой мыши на ярлыке "мой компьютер" и выбрать в меню строку "управление"; - Выполнить команду `%windir%\system32\compmgmt.msc /s`. Для этого нажмите Win + R, введите эту команду и нажмите enter.
Лично я предпочитаю второй вариант, правда для этого нужно помнить эту команду. Благо я однажды добавил в панель инструментов своего TotalCommander’а кнопку, которая открывает окно “управление компьютером”. Что, то я отвлекся…
В разделе “управление дисками” ищем свой диск. Диск 0, Диск 1, Диск 2… Цифры - это и есть номера дисков.
В моем случае - это был Диск 1 . Так вот, в вышеописаной команде есть такая подстрока \\.\PhysicalDrive1 . Последняя цифра здесь должна совпадать с номером диска, который вы узнали в панели управления компьютером.
Ещё один момент, который я хотел бы описать - это место где будет создан нужный нам файл. В моем варианте - %USERPROFILE%\USB-HDD-connector.vmdk - это значит, что в папке %USERPROFILE% (это системная переменная Windows, которая будет заменена интерпретатором командной строки на путь к папке пользователя, под которым вы авторизованы в системе) будет создан файл USB-HDD-connector.vmdk . Конечно же вы можете использовать здель любое удобное вам имя файла и путь, но если в этой строке есть пробелы, то её обязательно нужно заключить в кавычки. Иначе интерпретатор воспримйет этот пробел как переход к следующей инструкции.
###В итоге в вашей консоли должа быть примерно следующая картина:
В случае успешного выполнения команды и создания файла связи вы увидите ответ: RAW host disk access VMDK file %userpofile%\USB-HDD-connector.vmdk created successfully ”. Вооот. Осталось дело за малым - создать виртуальную машину и выбрать в качестве жесткого диска файл, который мы только что создали. Ах да… И включить его как “первичный мастер”.
Сразу хотелось бы предупредить, что VirtualBox может ругаться на то, что такого диска не существует и виртуальная машина не запустится. Это связано с тем, что у пользователя под которым вы авторизованы в системе недостаточно прав. Чтобы обойти эту неприятность запустите ваш VirtualBox от имени администратора.