Usb over ip

From Linux Wiki
Jump to navigation Jump to search

Configurare USB over IP Server pe Ubuntu 2X.04 LTS

Intr-un mediu enterprise in care se lucreaza cu foarte multe stiick-uri USB este nevoie ca acestea sa fie plasate intr-un mediu centralizat la care intreaga infrastuctura sa aiba acces. Prin intermediul USBIP stick-urile pot fi plasate intr-o singura locatie indiferent daca acestea sunt stick-uri de stocare, certificate SSL, semnaturi digitale, YubiKey-uri sau modem 4G/5G.

Instalare usbip

USBIP face parte in Ubuntu 2X.44 din luita de tool-uri linux-tools-generic. Pentru instalare se executa in consola:

apt install linux-tools-generic

Se verifica daca kernelul are modulele disponibile:

lsmod | grep usbip

...in unele situatii fiind necesara instalarea unor pachete specifice:

apt install linux-tools-5.15.0-43-generic linux-cloud-tools-5.15.0-43-generic

Startup usbip

Pentru ca aplicatia sa porneasca la odata cu systemului de operare se creeaza un fisier de startup un systemctl

  • nano /etc/systemd/system/usbipd.service


[Unit] Description=USB/IP Host Service After=network.target
[Service] ExecStart=/usr/bin/usbipd -D ExecStop=/usr/bin/usbip --tcp-port 3240 --log Restart=on-failure User=root Type=forking StartLimitBurst=5 StartLimitIntervalSec=10
[Install] WantedBy=multi-user.target

Dupa creerea serviciului se executa:

systemctl enable --now usbipd.service systemctl status usbipd.service usbipd.service - USB/IP Host Service Loaded: loaded (/etc/systemd/system/usbipd.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2024-04-12 18:03:02 EEST; 25min ago Process: 696 ExecStart=/usr/bin/usbipd -D (code=exited, status=0/SUCCESS) Main PID: 728 (usbipd) Tasks: 1 (limit: 2220) Memory: 800.0K CPU: 18ms

Module usbip

USBIP are nevoie de 3 module dintre care doua de USB/IP si unul de virtual host controller

modprobe usbip_core modprobe usbip_host modprobe vhci_hcd

Pentru ca aceste module sa fie activate la startup-ul de OS se adauga in lista de module incarcabile:

  • nano nano /etc/modules-load.d/modules.conf

usbip_core usbip_host vhci_hcd

Adaugare dispozitive USB

Din acest moment dispozitivele USB pot fi adaugate in system. Mai jos este prezentat modul in care se face passtrue dispozitivelor USB intr-un hypervisor Proxmox VM