Proxmox. Проброс usb-устройств в гостевую виртуальную машину. На примере ключей 1С HASP

обновлено 16.05.13

Немного теории о usb:
«Физическое соединение устройств осуществляется по топологии многоярусной звезды. Центром каждой звезды является хаб, каждый кабельный сегмент соединяет две точки — хаб с другим хабом или с функцией. В системе имеется один (и только один) хост-контроллер, расположенный в вершине пирамиды устройств и хабов. Хост-контроллер интегрируется с корневым хабом (Root Hub), обеспечивающим одну или несколько точек подключения — портов.» — источник

Наша задача выяснить, на какой шине (bus) и к какому порту (port) подключены наши usb-устройства. В качестве примера приведён проброс двух ключей HASP 1С Предприятия 8 (серверный и клиентский)

1. Вставляем usb-устройства;

2. Далее есть два способа выяснения связки шина-порт:
а) В консоли proxmox сервера выполняем «lsusb». В результате выясним имя устройств и найдём среди них свои:

Искомое: 2 ключа Aladdin Knowledge Systems HASP v0.06 на шине 6

Теперь выясняем, на каких портах «висят» ключи. Выполняем «lsusb -t», которая нам выдаст древовидную структуру:

Как видим, устройства (Device) 2 и 3 на шине 6 находятся на портах 1 и 2. Соответственно, пробрасывать будем 6-1 и 6-2.

б) Короткий способ.
Выполняем «qm monitor НОМЕР_ВИРТУАЛЬНОЙ_МАШИНЫ»,

Теперь выполняем команду «info usbhost»

Вот они наши HASP-ключи, опять же на шине 6 и портах 1 и 2.
Выходим командной quit либо сочетанием Ctrl+C

3. Редактируем на сервере файл /etc(/pve)/qemu-server/NNN.conf (где NNN-номер виртуальной машины) и добавляем следующие строки:
Для версии proxmox < 2.0

Для версии proxmox > 2.0 

4. Перезагружаем виртуальную машину.

5. Проверить, подцепились ли устройства, можно снова зайдя в qm monitor (как в п. 2б) и выполнив команду «info usb»

P.S. Также usb-устройство можно подключить, добавив в конец NNN.conf такое:

,где 0529:0001 — это device ID, взятый из п. 2а
Плюсы: при перемещении usb-устройства в другой порт не надо ничего перенастраивать;
Минусы: этот способ не годится, если у вас несколько устройств с одинаковыми device ID, как в указанном выше примере

Proxmox. Проброс usb-устройств в гостевую виртуальную машину. На примере ключей 1С HASP: 11 комментариев

  1. Hi!
    У вас не возникала такая проблема, что 1С сервер не видел таким образом прокинутого ключа?
    У меня проблема с подключением Aladdin 0529 ключа в Proxmox 2.3 на win 2008 64
    В устройставх прописывается, дрова ставятся, но в аладдин мониторе не появляется.

  2. Странное дело, пробую сделать проброс в виртуальную машину флэшки, но при добавлении usb1: host=nnnn:nnnn для виндовой машины это приводит к ее моментальному падению.
    Тоже самое делал в Linux, все прекрасно работает.
    В винде падение машины происходит при попытке активировать устройство.
    Подскажите куда копать.

  3. Какая у вас версия proxmox?
    Попробуйте подключить не по device ID, а по связке bus-port, а также разные номера usb (usb0: , usb2: ).

  4. Спасибо за оперативный ответ. Сегодня пробросывал принтер. Все получилось. Действительно, достаточно было прописать usb0. Работает как по hwID так и по ШИНА-ПОРТ. Жаль что виндовс так реагирует, в Линуксе номер usb никак на работоспособность не влияет.

  5. Бы. С флэшкой оказалось не работает. 🙁 Меняю ID принтера на ID флэхи — ВМ с виндой падает.Смена номера usb не помогает.

    На официальной вики для решения этой задачи рекомендуют ставить специальный сервер для проброса.

  6. Такая же проблема, в винду виртуальную пробрасывается, там отображается, тесты драйвера проходит, а в мониторе не видится.

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

Ваш e-mail не будет опубликован.