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

53

Вопрос прост и прямо:

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

ИЗМЕНИТЬ

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

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

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

    
задан Ravan 04.11.2015 в 06:16
источник

6 ответов

67

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

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

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

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

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

    
ответ дан Nathan Osman 04.11.2015 в 06:24
источник
40

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

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

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

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

EDIT:

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

sudo usermod -a -G vboxusers username

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

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

sudo usermod -a -G disk username

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

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

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

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

    
ответ дан Terrance 04.11.2015 в 06:46
9

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

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

К сожалению, это отказалось работать ... I 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
    
  3. Теперь у вас есть файл usb.vmdk , созданный с вашего загрузочного USB-накопителя. Я также попытался использовать dd USB-накопителя для файла изображения и создать файл .vmdk из файла изображения. Он работает, а также .vdi дисков создали первый способ (или из файла изображения)

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

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

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

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

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

    
ответ дан Marcio H Zuchini 14.10.2016 в 20:57
4

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

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

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

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

    
ответ дан David Faure 13.11.2016 в 11:00
1

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

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

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

  • Отключите карту памяти

    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
    

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

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

    
ответ дан Wayne Sallee 11.05.2016 в 21:37
0

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

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