Установка пакетов на сервере и на клиенте
На сервере и на клиенте должен быть установлен пакет linux-tools соответствующий версии используемого ядра. При наличии подключенных репозиториев установить пакет можно выполнив на сервере и клиенте команду:
sudo apt install linux-tools-`uname -r`
Настройка сервера
На сервере загрузить модули необходимые модули ядра, для чего выполнить команду:
sudo modprobe usbip-core
sudo modprobe usbip-host
sudo modprobe vhci-hcd
Демонизировать процесс: sudo modprobe usbip-host
sudo modprobe vhci-hcd
sudo usbipd -D
Проверка подключенных USB -устройств: sudo usbip list -l
busid 1-2 (03f0:4c17) Hewlett-Packard : EWS UPD (03f0:4c17)
При ошибке открытия по пути /usr/share/hwdata на клиенте выполнить:
sudo mkdir /usr/share/hwdata затем
sudo cp /var/lib/usbutils/usb.ids /usr/share/hwdata/usb.ids
Далее привязать устройство:
sudo usbip bind -b <bus ID устройства>
Для корректной работы должен быть открыт порт 3240.
Выполнить на клиенте:
sudo modprobe usbip-core
sudo modprobe vhci-hcd
Проверить видимость устройства можно выполнив на клиентском компьютере команду: sudo modprobe vhci-hcd
sudo usbip list -r <server ip>
Exportable USB devices ====================== - 192.168.122.45 3-1: Aktiv : Rutoken ECP (0a89:0030) : /sys/devices/pci0000:00/0000:00:05.1/usb3/3-1 : (Defined at Interface level) (00/00/00)
Смонтировать USB-устройство на клиенте:
sudo usbip attach -r <server> -b <bus ID>
При отмонтировании usb клиентом устройство может больше не определяться до повторного физического подключения на сервере.