Курс, который сделает вас востребованным на рынке автоматизатором в тестировании и перевернёт ваше представление о том, что тестирование — это скучно и является только шагом перед работой разработчиком. Рекомендую познакомиться с онлайн-курсом «QA Automation Engineer» в OTUS. Курс не для новичков, для поступления нужно пройти вступительный тест.

Рассмотрим вариант подключения в виртуальную машину USB устройства. Вариаций этих устройств множество и все их можно без проблем подключить к требуемой виртуальной машине. В системе виртуализации Proxmox делается это быстро и просто.

Для 5 версии Proxmox

С выходом новой версии проброс USB устройств сильно упростился. Нам достаточно выбрать виртуальную машину, добавить устройство указав вариант его проброса по порту или id.

Proxmox5_usb_sevo44 Proxmox5_usb_sevo44_2 Proxmox5_usb_sevo44_1

Для 4 версии Proxmox

С инструкцией по подключению USB устройств вы можете ознакомится на официальном сайте Proxmox.

Определение устройства

Подключим в систему Proxmox необходимое устройство и в консоли выведем информацию о подключенияx.

lsusb
= вывод команды =
Bus 001 Device 005: ID 0781:5572 SanDisk Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 003: ID 0665:5161 Cypress Semiconductor USB to Serial
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Видим подключенную флэшку.

Выведем информации о том на каких портах висят устройства.

lsusb -t
= вывод команды =
/: Bus 05.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/: Bus 04.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
 |__ Port 1: Dev 3, If 0, Class=Human Interface Device, Driver=usbfs, 1.5M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/8p, 480M
 |__ Port 3: Dev 5, If 0, Class=Mass Storage, Driver=usb-storage, 480M

Видим нашу флэшку которая села на Bus 01 Dev 5 на Port 3.

Варианты проброса устройств

Существуют два вариант передачи USB-устройства в виртуальную (гостевую) систему:

  • передать определенное устройство — при перемещении usb-устройства в другой порт не надо ничего перенастраивать. Вариант хорош, когда надо пробросить одно устройство и второго подобного не будет,
  • передать порт — вариант передает порт на котором работает устройство.

Оба варианта имеют свои нюансы и решать каким пользоваться только вам. Мне больше нравится вариант с пробросим порта, так как он не вызывает непонятных проблем после перезагрузки.

Проброс осуществляются по номеру виртуальной машины. Папка с файлами для редактирования находится по адресу /etc/pve/qemu-server/ в ней вы увидите все ваши виртуальные машины.

Проброс USB устройства

Откроем необходимый файл и добавим нужные параметры.

mcedit /etc/pve/qemu-server/104.conf
= вывод команды с необходимыми добавлениями =
balloon: 500
bootdisk: sata0
cores: 2
ide2: local:iso/CentOS-7-x86_64-DVD-1511.iso,media=cdrom
memory: 1500
name: lamp.sevo44.ad-centos7
net0: e1000=7A:5A:34:67:6C:52,bridge=vmbr0
numa: 0
onboot: 1
ostype: l26
sata0: images:104/vm-104-disk-1.qcow2,size=400G
scsihw: virtio-scsi-pci
smbios1: uuid=4374a7e1-1fc7-4eaf-9567-aa5f9cb19b33
sockets: 2
# Проброс устройства USB
# где 0781:5572 - это device ID
usb0: host=0781:5572

Проброс USB порта

Для проброса по порту надо указать другую строчку в необходимом файле.

mcedit /etc/pve/qemu-server/104.conf
= вывод команды с необходимыми добавлениями =
balloon: 500
bootdisk: sata0
cores: 2
ide2: local:iso/CentOS-7-x86_64-DVD-1511.iso,media=cdrom
memory: 1500
name: lamp.sevo44.ad-centos7
net0: e1000=7A:5A:34:67:6C:52,bridge=vmbr0
numa: 0
onboot: 1
ostype: l26
sata0: images:104/vm-104-disk-1.qcow2,size=400G
scsihw: virtio-scsi-pci
smbios1: uuid=4374a7e1-1fc7-4eaf-9567-aa5f9cb19b33
sockets: 2
# Проброс USB порта
# где 1-3 это шина Bus 01 и номер порта Port 3
usb0: 1-3

После перезагрузки устройства будут проброшены.

Результат

В новой 5-ой версии все упрощается но знать механизм как это работает изнутри всегда хорошо. Можно определять подключенные USB устройства командой «qm monitor НОМЕР_ВИРТУАЛЬНОЙ_МАШИНЫ» и после подключения вводить команду «info usbhost» или «info usb». Мне этот вариант показался не совсем логичным, так как требует указывать номер виртуальной машины, но при разных вариантах ввода номера машины показывает одинаковую информацию. Делая по рассмотренному способу, у меня всё работает. Главное не способы а результат!

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Понравилась статья? Поделитесь ей с друзьями!

Онлайн курс "Автоматизация веб-тестирования"

Курс, который сделает вас востребованным на рынке автоматизатором в тестировании и перевернёт ваше представление о том, что тестирование — это скучно и является только шагом перед работой разработчиком. Рекомендую познакомиться с онлайн-курсом «QA Automation Engineer» в OTUS. Курс не для новичков, для поступления нужно пройти вступительный тест.

Проверьте себя на вступительном тесте и смотрите программу детальнее по ссылке.

Похожие по теме записи

Уважаемые коллеги, пожалуйста, оставляйте свои комментарии

Мне это важно, так как получая обратную связь я получаю информацию которая позволяет мне улучшить качество написания статей. Кроме того, оставляя комментарии вы помогаете сайту получить более высокий рейтинг у поисковых систем.

2 комментария для статьи “USB проброс в Proxmox

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *