понедельник, 23 июля 2012 г.

Проброс usb host устройства в виртуальную машину KVM на Centos 6

Проброс usb host устройства в виртуальную машину KVM на Centos 6


Добрый день, читатель. 
Недавно столкнулся с задачей: проброс usb ключей и подобных устройств в KVM виртуальную машину. 
Использую везде преимущественно Centos 5 и 6. 
Виртуальные машины - Windows от 2003 до 2008 R2, плюс Linux.

В последних версиях virt-manager данный функционал, оказывается уже встроен. 
Проброс устройства в linux работает прекрасно. В Windows же пробрасываться не хочет. 

После небольшого чтения форумов выяснил что задача решается рекомпиляцией ядра с выключением usb 2.0 (в 5 версии данный функционал включался модулем).

Ну поскольку проблема ясна, а ядро перекомпилировать не хочется, решил поискать альтернативы. Вот один из них: 
cd /sys/bus/pci/drivers/ehci_hcd/
ls -l

Примерный вывод:

lrwxrwxrwx. 1 root root    0 Oct 13 17:29 0000:00:1d.7 -> ../../../../devices/pci0000:00/0000:00:1d.7
--w-------. 1 root root 4096 Oct 13 17:29 bind
lrwxrwxrwx. 1 root root    0 Oct 13 17:29 module -> ../../../../module/ehci_hcd
--w-------. 1 root root 4096 Oct 13 17:29 new_id
--w-------. 1 root root 4096 Oct 13 17:29 remove_id
--w-------. 1 root root 4096 Oct 13 17:29 uevent
--w-------. 1 root root 4096 Oct 13 17:29 unbind
Вызываем: 
echo -n "0000:00:1d.7" > /sys/bus/pci/drivers/ehci_hcd/unbind

Взято отсюда:


Проверил. Работает проброс в 2008R2.

Кто-то, кстати, решал проблему другими способами:
Установкой самого свежего qemu. Не рискнул что либо компилировать. Люблю когда все обновляется из репозиториев.

Отправить комментарий