- Стенд USB продвинулся в VirtualBox требуется пакет расширений и, в Linux, принадлежат vboxusers.
- Фильтры USB автоматизируют захват устройств; меню «Устройства» позволяет управлять ими «на лету».
- Для максимальной совместимости отдайте предпочтение USB 2.0; USB 3.0 работает с Extension Pack и драйверы уместно.
- Можно загрузить виртуальную машину с физического USB-накопителя, создав необработанный VMDK с помощью VBoxManage.
Возможно, вы только что подключили память, принтер или адаптер к хост-компьютеру и задаетесь вопросом, почему виртуальная машина он этого не обнаруживает. VirtualBox по умолчанию не разрешает USB-доступ к гостевой системе., поэтому вам необходимо подготовить среду для «перемещения» этого устройства с вашего физического компьютера на виртуальную машину.
Хорошая новость в том, что процесс прост, если следовать четкой последовательности: установить соответствующий пакет расширений, проверить права доступа (в Linux — группа vboxusers), настроить USB-контроллер и фильтры устройств в виртуальной машине и используйте меню «Устройства» для захвата или освобождения аппаратные средства Горячая загрузка. Кроме того, если вам нужно больше, вы можете загрузить виртуальную машину с физического USB-накопителя.
Что такое USB-передача в VirtualBox и как она работает?

Когда мы говорим о «сквозном USB-подключении», мы подразумеваем, что гостевая система может управлять устройством, подключенным к хосту, как если бы оно было подключено непосредственно к виртуальной машине. Хозяин передает управление устройством и предлагает его гостю., что означает, что хост перестает его видеть, пока он захвачен виртуальной машиной.
В macOS это очень хорошо заметно: при захвате флешки из виртуальной машины, Finder перестает его показывать. Когда вы закроете виртуальную машину или отпустите устройство, оно снова появится в обычном режиме MacЕсли вы подключаете USB-накопитель при выключенной виртуальной машине, он будет смонтирован на хосте; если виртуальная машина включена и на ней установлен фильтр, или вы захватываете ее из меню, она будет смонтирована на госте.
VirtualBox поддерживает контроллеры USB 1.1 (OHCI), 2.0 (EHCI) и 3.0 (xHCI). Для повышения производительности обычно включают USB 2.0 или 3.0, но есть нюансы: Для USB 3.0 требуется установить пакет расширений, соответствующий версии VirtualBox. а также на старых гостевых системах, таких как Windows 7, xHCI часто вызывает проблемы; в этом случае лучше остаться на версии 2.0, чтобы избежать несовместимостей.
Ключевым инструментом для автоматизации использования конкретного устройства является USB-фильтр. Добавив фильтр, связанный с устройством (например, USB-флеш-накопитель определённого производителя), VirtualBox автоматически захватит этот USB-накопитель, как только он будет подключен. и виртуальная машина работает, без необходимости вручную заходить в меню, чтобы найти её. В средах Windows, Вы также можете использовать PowerShell для обнаружения событий USB. и автоматизировать дополнительные действия.
Предварительные условия: пакет расширений и гостевые дополнения
VirtualBox распространяется по лицензии GPLv3, но расширенные функции USB (EHCI/xHCI) и другие предоставляются через Extension Pack, который использует лицензию PUEL. Этот пакет расширения необходим для корректной работы USB 2.0/3.0. и должна точно соответствовать установленной версии VirtualBox.
Установка проста: зайдите на официальный сайт загрузок В VirtualBox найдите раздел «Пакет расширений» и загрузите версию «Все поддерживаемые платформы». Затем откройте VirtualBox, выберите «Инструменты» > «Расширения» и нажмите кнопку «+». Выберите загруженный файл, примите лицензию и пройдите аутентификацию. Когда он вас об этом попросит. Установка будет произведена за считанные секунды.
Если вы используете Linux в качестве хоста, есть дополнительный шаг по настройке разрешений: Ваш пользователь должен принадлежать к группе vboxusers. чтобы иметь возможность управлять USB-устройствами из VirtualBox и, если необходимо, узнать, как Обнаружение событий USB в Linux. Вы можете добавить пользователя любым удобным для вас способом (системный графический интерфейс или терминал) и войдите снова, чтобы применить изменения.
sudo usermod -aG vboxusers NOMBRE_DE_USUARIO
# Alternativa habitual:
sudo adduser NOMBRE_DE_USUARIO vboxusers
Гостевые дополнения, с другой стороны, представляют собой набор драйверов и утилит, которые устанавливаются в гостевой системе. Хотя поддержка USB не зависит от них, Улучшение общей производительности, интеграции указателей и синхронизации, поэтому рекомендуется установить их. На виртуальной машине выберите «Устройства» > «Вставить образ диска с гостевыми дополнениями», откройте установщик (в Windows запустите от имени администратора) и Перезапустите гостевую ОС, чтобы изменения вступили в силу..
Включить поддержку USB на каждой виртуальной машине
После установки пакета расширений перейдите в настройки виртуальной машины (значок шестерёнки или «Машина» > «Настройки»). В разделе «USB» активировать контроллер и выберите подходящий режим: USB 1.1 (базовый), 2.0 (рекомендуется в большинстве случаев) или 3.0 (если ваша гостевая система хорошо его поддерживает).
Чтобы виртуальная машина назначала хосту определённое USB-устройство сразу после его подключения, создайте USB-фильтр. Подключите устройство к хосту, вернитесь в раздел USB виртуальной машины и нажмите кнопку «+», чтобы добавить его в список. Фильтр сохранит идентификаторы, такие как поставщик и продукт., поэтому он захватит это устройство (и соответствующие модели), как только виртуальная машина будет запущена.
Результирующее поведение соответствует ожидаемому: Если виртуальная машина загружается при подключении USB-накопителя, она будет назначена гостевойЕсли виртуальная машина выключена, устройство останется на хосте. Вы можете переместить устройство в горячем режиме через меню «Устройства», как описано ниже.
На устройствах Apple некоторые пользователи предпочитают объединять фильтр при выключенной виртуальной машине, чтобы гарантировать обнаружение. Это так же просто, как добавить фильтр с закрепленной памятью и запустить виртуальную машину.; с этого момента каждый раз при подключении этого USB-накопителя во время работы гостевой ОС произойдет автоматическое переключение.
- Откройте VirtualBox и выберите виртуальную машину.
- Перейдите в «Настройки» > «USB» и включите USB 2.0 или 3.0 по необходимости (для широкой совместимости, USB 2.0 — это надежный выбор).
- Подключите устройство к хосту и нажмите кнопку «+», чтобы создать соответствующий фильтр.
- Сохраните изменения, запустите виртуальную машину и протестируйте обнаружение устройств в гостевой системе.
Захват и освобождение устройств из горячего меню
Если вы не хотите использовать фильтры или вам нужно быстро переместить устройства, воспользуйтесь меню выполнения. В окне виртуальной машины перейдите к Устройства > USB-устройства Вы увидите список оборудования, подключенного к хосту. Щелкните нужное устройство, чтобы сделать снимок экрана; оно будет отмечено галочкой, что означает, что оно назначено виртуальной машине.
Чтобы отключить его от гостя, повторите процесс: Устройства > USB-устройства и снимите отметку с используемого оборудования. После освобождения хост его перемонтирует. если применимо (например, он снова появится в Finder macOS или Проводнике файлов на хост-компьютере Windows).
Важное предупреждение: Не захватывайте USB-накопитель, который смонтирован и на хосте имеются открытые файлы.При переназначении его виртуальной машине этот том внезапно отмонтируется от хоста, и вы можете потерять данные. Сначала безопасно извлеките его на хосте, а затем сохраните на гостевой системе.
Особенности хостовой macOS
На Mac типичная последовательность действий для виртуальной машины Windows такова: откройте VirtualBox, после создания виртуальной машины перейдите в Настройки > Порты > USB и выберите режим (лучше всего 2.0 для совместимости), подключите устройство к Mac, Нажмите значок «+», чтобы создать фильтр устройств. и сохранить. С этого момента, когда виртуальная машина Загрузка, USB-накопитель будет прозрачно передан в Windows.
Пока USB назначен виртуальной машине, Finder не покажет громкостьЭто нормально. Если вы в любой момент закроете виртуальную машину и снова вставите USB-накопитель, он снова подключится в macOS, и вы сможете использовать его как обычно.
Нюанс совместимости, о котором стоит помнить: Старые гостевые ОС, такие как Windows 7, могут некорректно работать с USB 3.0.. Один не обнаруживает устройство При использовании xHCI измените контроллер на EHCI (USB 2.0) в настройках виртуальной машины и повторите попытку подключения.
Linux Host: разрешения и быстрая проверка
Если при попытке захвата USB возникает ошибка прав доступа или устройство возвращается на хост, проверьте, принадлежит ли ваш пользователь к vboxusers. Без принадлежности к этой группе VirtualBox не сможет подключать USB-устройства. к виртуальные машины в GNU/Linux.
Подтвердите свое членство с помощью команды groups, и если вы внесли какие-либо изменения, выйдите из системы и войдите снова. Без входа в систему новые разрешения не применяются. и у вас все равно будет та же проблема при захвате устройств.
groups
sudo usermod -aG vboxusers NOMBRE_DE_USUARIO
Загрузите виртуальную машину с физического USB-накопителя
В интерфейсе VirtualBox нет кнопки для прямой загрузки с USB-накопителя, но это возможно с помощью небольшой хитрости: создайте «сырой» виртуальный диск, указывающий на физический USB-накопитель. Это делается с помощью VBoxManage и требует прав администратора. на хост-системе.
Прежде чем начать, подключите USB-накопитель к системе, которую вы хотите загрузить, и закройте все виртуальные машины, использующие его. Откройте консоль с повышенными правами доступа и перейдите в папку установки VirtualBox. В Windows каталог по умолчанию можно открыть так::
cd %programfiles%\Oracle\VirtualBox
Теперь создайте дескриптор VMDK, указывающий на физический диск на USB-накопителе. Замените # на правильный номер диска (в Windows его можно определить с помощью таких инструментов, как «Управление дисками»). Базовая команда будет следующей::
VBoxManage internalcommands createrawvmdk -filename C:\usb.vmdk -rawdisk \\.\PhysicalDrive#
После создания файла C:\usb.vmdk откройте VirtualBox от имени администратора, создайте новую виртуальную машину (или отредактируйте существующую) и при настройке хранение, выберите «использовать существующий файл виртуального жесткого диска» и выберите этот VMDK. При загрузке виртуальная машина попытается загрузиться с содержимого USB-накопителя. как будто это их главный альбом.
Обратите внимание, что работа в сыром режиме с физическим устройством влечет за собой риски: Убедитесь, что вы выбрали правильный диск, и избегайте разрушительных операций. на этом носителе, если не хотите его перезаписывать. Если гостевая прошивка не загружается с USB-накопителя, проверьте порядок загрузки в виртуальном BIOS/UEFI и убедитесь, что система на USB-накопителе действительно загружается.
Советы и распространенные проблемы
Несоответствующие версии Extension Pack и VirtualBox вызывают незначительные ошибки (USB не отображается, отключения). Убедитесь, что пакет расширений точно соответствует вашей версии VirtualBox. (тот же номер сборки) и переустановите его, если вы обновили гипервизор.
Если захват флешки из меню не приводит к ее переносу на виртуальную машину, обычно это происходит потому, что она смонтирована и используется хостом. что приводит к ошибкам распознавания. Отмонтируйте или извлеките устройство из хоста перед его захватом. и не открывайте приложения, которые блокируют файлы.
Если устройство USB 3.0 работает неправильно в виртуальной машине (выходит из строя, не распознается гостем), попробуйте EHCI. Временный возврат к USB 2.0 устраняет многие проблемы совместимости., особенно для пожилых гостей или тех, у кого неполный набор навыков вождения.
Гостевые дополнения не являются обязательными для USB, но они помогают сделать работу более плавной, особенно при интеграции указателя и экрана. После их установки всегда перезагружайте гостевую машину. чтобы водители оставались активными.
В GNU/Linux недостаточно создать группу vboxusers; Вам необходимо добавить пользователя и снова войти в систему, чтобы унаследовать разрешения.Если вы пропустите этот шаг, при попытке подключения устройства вы увидите ошибки доступа.
Если все вышеперечисленное в порядке — установлен пакет расширений, пользователь в vboxusers (если применимо), соответствующий контроллер (2.0 или 3.0), четко определенные фильтры и правильное использование меню «Устройства» — Подключение USB к виртуальной машине в VirtualBox становится рутинным жестом.А если вам нужно пойти еще дальше, загрузка с USB с использованием сырого VMDK дает вам гибкость для тестирования физического носителя в режиме реального времени внутри виртуальной машины.
Страстный писатель о мире байтов и технологий в целом. Мне нравится делиться своими знаниями в письменной форме, и именно этим я и займусь в этом блоге: покажу вам все самое интересное о гаджетах, программном обеспечении, оборудовании, технологических тенденциях и многом другом. Моя цель — помочь вам ориентироваться в цифровом мире простым и интересным способом.
