Наши партнеры

UnixForum





Библиотека сайта rus-linux.net

Как запустить ОС с USB-диска в Virtualbox

Оригинал: How To Boot From USB Drive In Virtualbox In Linux
Автор: SK
Дата публикации: 22 мая 2020 г.
Перевод: В.Костромин
Дата перевода: 25 мая 2020 г.

В предыдущей статье мы рассмотрели процесс создания с помощью Ventoy мульти-загрузочного USB-диска в Linux-системе. После успешного создания загрузочного диска имеется возможность добавлять разные ISO-образы на загрузочный диск и запускать с него разные версии операционных систем. Но при этом остается небольшая проблема, заключающаяся в том, что приходится перезагружать систему каждый раз после добавления нового ISO, чтобы проверить, действительно ли работает USB-накопитель. Это занимает много времени. Было бы лучше, если бы можно было загрузиться с USB-накопителя в виртуальную машину Virtualbox, установленную в системе Linux. Как вы, возможно, знаете, Oracle Virtualbox не предлагает прямого способа загрузки с USB. К счастью, нашелся простой обходной путь, позволяющий Virtualbox загружаться с USB-накопителя.

Загрузка с USB-диска в Virtualbox в системе Linux

Чтобы разрешить Virtualbox загружаться с USB-накопителей, вам нужно создать файл .vmdk и разместить его на USB-накопителе для загрузки с него. Файл vmdk - это не что иное, как файл виртуального диска, который содержит всю информацию об отдельной виртуальной машине.

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

Простой способ состоит в использовании команды “fdisk” :

$ sudo fdisk -l

Пример вывода:

[...]
Disk /dev/sdc: 14.54 GiB, 15597568000 bytes, 30464000 sectors
Disk model: Cruzer Blade    
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x4d924612

Как видите, в данном случае USB-диск имеет имя /dev/sdc.

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

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

В некоторых дистрибутивах Linux команда vboxmanage чувствительна к регистру символов. В этом случае команда создания vmdk-файла должна иметь вид:

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

В результате будет создан новый vmdk-файл с именем “usb.vmdk” в вашем домашнем каталоге $HOME. Если создание vmdk-файла пройдет успешно, вы увидите сообщение следующего вида:

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

Create new vmdk file using vboxmanage command

Задайте нужные разрешения для вновь созданного vmdk-файла:

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

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

$ sudo usermod -a -G vboxusers sk
$ sudo usermod -a -G disk sk

Конечно, не забудьте заменить “sk” на ваше имя пользователя. Пожалуйста, помните, что добавление пользователя в группу “disk” опасно и представляет угрозу безопасности.

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

Теперь откройте приложение Oracle Virtualbox и создайте новую виртуальную машину:

Create new virtual machine in virtualbox

Укажите имя виртуальной машины, тип и версию ОС и щелкните по кнопке Next:

Enter virtual machine details in virtualbox

Задайте объем оперативной памяти:

Enter RAM size to virtual machine in virtualbox

Следующий шаг очень важен. Выберите вариант “Use an existing virtual hard disk file” и щелкните по экранной кнопке с изображением стрелки ВВЕРХ:

Use an existing virtual hard disk file

В открывшемся окне щелкните по иконке “Add” чтобы выбрать вновь созданный vmdk-файл:

Click "Add" button to choose the newly created vmdk file

Выберите созданный вами vmdk-файл на вашем локальном диске:

Choose the newly created vmdk file from your local drive

После добавления файла vmdk нажмите кнопку «Choose» (Выбрать) для подтверждения:

Confirm adding the vmdk file

После этого вы увидите, что файл vmdk выбран в качестве виртуального жесткого диска для нового виртуального компьютера. Нажмите Next (Далее), чтобы продолжить:

vmdk file is selected as the virtual hard disk

Все сделано! Подключите ваш загрузочный USB-диск и запустите виртуальную машину:

Boot from USB drive in Virtualbox

Теперь вы можете загружать одну из ОС, имеющихся на вашем USB-диске, в Oracle Virtualbox. На следующей картинке вы видите момент загрузки с загрузочного USB-диска, созданного с помощью скрипта Ventoy, в Virtualbox:

Boot From USB Drive In Virtualbox In Linux

Создание ISO-образа загрузочного USB-диска

Существует другой способ загрузки с USB-диска в Virtualbox. В этом методе не требуется создавать vmdk-файл. Вместо этого создайте ISO-образ вашего загрузочного USB-диска, используя утилиту “GNOME disk utility” или команду “dd” как описывается в следующей статье:

После создания ISO-образа, откройте приложение Virtualbox и перейдите на вкладку Settings любой из имеющихся у вас виртуальных машин, после чего добавьте (смонтируйте) вновь созданный .iso-файл как оптический диск в секции “Storage Controller: IDE”.

Add ISO in virtualbox storage controller

Теперь запустите виртуальный компьютер и загрузите систему с этого ISO-образа.

Пожалуйста, обратите внимание, что этот метод работает не со всеми образами USB-дисков, в частности, с USB-дисками разбитыми на несколько разделов.