Как загрузиться с USB-накопителя в VirtualBox?

Вопрос прост и прямолинеен:

Как загрузиться с USB-накопителя в VirtualBox?

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

Я приложил usb в VirtualBox, как показано на скриншоте.

https://i.stack.imgur.com/UPZZo.png

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

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

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

  1. Скачать Менеджер загрузки Plop (в настоящее время v5.0.15)
  2. Извлеките файл plpbt.iso из ZIP-архива и сохраните его где-нибудь.
  3. Откройте настройки виртуальной машины и прикрепите ISO-файл:

    enter image description here

  4. Добавьте фильтр для USB-устройства:

    enter image description here

  5. Загрузите виртуальную машину и выберите опцию "USB" в меню:

    enter image description here

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

РЕДАКТИРОВАТЬ: 7 марта 2018

Здесь есть на что обратить внимание. Оставление USB-накопителя в компьютере при перезагрузке может изменить /dev/sd обозначение буквы диска, вызывающее необработанный usb.vmdk файл, указывающий на неправильный диск, чтобы он не загружался в VirtualBox. В качестве теста я оставил один в своей системе. Это было /dev/sdi до того, как я перезагрузился, после перезагрузки это было /dev/sdc. При перезагрузке компьютера для внесения любых изменений, пожалуйста, извлеките USB-накопитель перед перезагрузкой. Я изучаю, можно ли вместо этого создать необработанный диск из UUID диска, поскольку это не изменится.


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

записка: Вы ДОЛЖНЫ добавить свою учетную запись пользователя в vboxusers группа для VirtualBox, чтобы увидеть ваш USB. Вы также ДОЛЖНЫ добавить свою учетную запись в disk также сгруппируйте, или вы не сможете добавить .vmdk файл на вашу виртуальную машину. Добавлены инструкции ниже в РЕДАКТИРОВАТЬ. Это также не копирует USB-накопитель на жесткий диск и использует USB напрямую. Это может быть полезно, если на USB-накопителе есть данные, которые вы хотите сохранить. Не каждая ситуация одинакова, поэтому это может сработать не в каждом случае.

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

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

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

Или

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

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

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

Примечание: У некоторых людей возникли проблемы с владением вновь созданным файлом. Возьмите на себя ответственность за новый файл:

sudo chown $USER:$USER ~/usb.vmdk

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

enter image description here

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

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

sudo usermod -a -G vboxusers username

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

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

sudo usermod -a -G disk username

Тогда ты НЕОБХОДИМО ПЕРЕЗАГРУЗИТЬСЯ вашей системе, чтобы изменения вступили в силу.

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

enter image description here

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

enter image description here

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

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

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

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

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

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

    sudo VBoxManage convertfromraw /dev/sdb ./usb.vmdk --format vmdk
  3. Теперь у вас есть usb.vmdk диск, созданный с вашего загрузочного USB-накопителя. Я тоже пытался dd флешку в файл изображения и создайте .vmdk диск из файла образа. Это работает, а также .vdi диски, созданные прежним способом (или из файла образа)

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

    sudo chown `whoami`:`whoami` ./usb.vmdk
  5. Теперь вам просто нужно прикрепить usb.vmdk диска на виртуальную машину. Но это должен быть подключен к контроллеру IDE. Я пытался SATA безрезультатно.

A VM example with a bootable <code>usb.vmdk</code> attached to an IDE controller

На данный момент с тобой все в порядке.

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

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

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

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

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

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

Я бы предложил следующие шаги.

  1. Открытые диски.
  2. Ищите USB-накопитель.
  3. Нажмите там, и в правом верхнем углу вы увидите значок настроек с 3 параллельными линиями.
  4. Нажмите там и выберите Создайте Образ Диска...
  5. Выберите местоположение и нажмите Создавать. Он создаст файл .img, который вы сможете использовать в VirtualBox.

Если ваш USB-накопитель является загрузочным диском EFI, то Plop Boot Manager не будет работать, поскольку он не поддерживает загрузку EFI. Что сработало для меня в таком случае, так это использование rEFInd boot manager (http://www.rodsbooks.com/refind/).

  1. Загрузите повторно загрузочный ISO-файл с http://sourceforge.net/projects/refind/files/0.11.4/refind-cd-0.11.4.zip/download и расстегни молнию.

  2. Откройте настройки виртуальной машины в VirtualBox и прикрепите ISO-файл rEFInd CD.

  3. Убедитесь, что включена опция "Включить EFI (только для специальных операционных систем)" в настройках виртуальной машины на вкладке "Система".

  4. Загрузите виртуальную машину, и вы должны увидеть меню повторной загрузки:

rEFInd menu

  1. Подключите свой USB-накопитель в VirtualBox.

  2. Нажмите клавишу backspace, чтобы обновить меню, или просто подождите несколько секунд, и диск должен появиться в меню.

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

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

Итак, вот что я должен сделать:

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

  • Размонтировать карту памяти

    su -chmod 666 /dev/sdc1chmod 666 /dev/sdcexit # Run the following command as regular user:VBoxManage internalcommands createrawvmdk -filename usb.vmdk -rawdisk /dev/sdcsu - # Back as root again:chmod 777 usb.vmdkchmod 666 /dev/sdc
  • Подключите виртуальную машину usb.vmdk virtualbox

    chmod 666 /dev/sdc
  • Запустите машину virtualbox
  • После завершения сбросьте разрешение sdc1 для обеспечения безопасности:

    chmod 660 /dev/sdc1

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

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

Для тех, кто пытается сделать это с помощью VirtualBox на хосте Windows, здесь представлено полностью рабочее решение для этого:https://www.howtogeek.com/187721/how-to-boot-from-a-usb-drive-in-virtualbox/

@dattutbrus Это не сработает, если вы хотите изменить файлы на USB

@dattutbrus, это не работает, ваш ISO не будет загрузочным

@Ravan - не забывайте, что часто пользователи не прикрепляют в gparted свойство “boot” к usb-накопителю. Это находится в меню “раздел” gparted, и там вы можете отредактировать соответствующий флаг. ярлык usb-накопителя и активируйте параметр “загрузка”.

Вы можете просто открыть свой USB, сжать все в ISO-файл и загрузить его в обычном режиме.