Electronic Team uses cookies to personalize your experience on our website. By continuing to use this site, you agree to our cookie policy. Click here to learn more.

Condivisione USB su Ethernet con Raspberry Pi resa facile

Editorial Team Editorial Team
Apr 1, 2021

Essere in grado di condividere un dispositivo USB attraverso la rete può essere molto vantaggioso in molte situazioni quotidiane. Supponiamo che tu abbia un dongle di licenza per il software che tutti nel tuo ufficio devono utilizzare. E ogni singolo giorno quel dongle viene collegato e tirato fuori più volte di quanto chiunque possa contare e ci sono buone probabilità che a un certo punto cada in pezzi. Certo, le cose non possono andare avanti così per sempre, ma acquistare a tutti la propria licenza è fuori dal tuo budget. Ci deve essere un altro modo per aggirare questo problema, giusto?

14-giorni disponibili di prova gratuita
Il prezzo della licenza parte da $159.95
Disponibile per
USB su Ethernet Raspberry Pi

Bene, come avrai sentito, puoi condividere un dispositivo connesso a USB su TCP / IP con un Raspberry Pi.. Per farlo, riceverai un software speciale. E la domanda principale qui è: quale dovresti prendere? Un'app a pagamento infallibile o una soluzione open source gratuita ma glitch? Diamo un'occhiata a entrambi.

Il metodo più ovvio per condividere una USB da Raspberry Pi

La prima cosa che devi fare per configurare il tuo Raspberry Pi come server USB-over-Ethernet è assicurarti che Raspberry sia in esecuzione su Ubuntu 14.04-19.10 e sia connesso al dispositivo che stai per condividere. Quindi, segui questi passaggi:
1
Scarica la versione USB Network Gate corretta per il tuo sistema operativo.
2
Sul Raspberry, esegui questi comandi:
dpkg -i [package]
apt-get install -f
rpm -i [package]


Oppure puoi usare questo: yum install [package]
3
Avvia l'app e fai clic su "Condividi" accanto al tuo dispositivo.

Questo è tutto!

Dopodiché, sarai in grado di accedere al dispositivo condiviso da qualsiasi macchina connessa a Internet, indipendentemente dal sistema operativo su quella macchina remota (funziona per Linux, Windows e Mac) o dalla distanza fisica da essa. Non avrai nemmeno bisogno di caricare il modulo del kernel per avviare USB Network Gate su una macchina Linux. Inoltre, l'app può essere utilizzata su macchine virtuali VMware, VMware ESX Server, Citrix XenServer e Microsoft Hyper-V. Questo metodo funziona per dispositivi USB di tutti i tipi e marche. Tutta la condivisione / annullamento della condivisione del dispositivo ha effetto immediato senza che sia necessario riavviare il sistema.

Tutte le connessioni stabilite con USB Network Gate sono totalmente sicure grazie all'avanzata crittografia SSL a 2048 bit. Inoltre, puoi impostare una password di autorizzazione per una protezione aggiuntiva. Quindi non c'è assolutamente alcuna possibilità che i tuoi dati finiscano nelle mani sbagliate.

La cosa migliore dell'opzione per USB Network Gate è che non hai davvero bisogno di trasformare in modo permanente il tuo Raspberry Pi in un server USB-over-IP. È una soluzione multipiattaforma ottima per condividere dispositivi USB da qualsiasi macchina tu abbia, inoltre, non c'è limite al numero di dispositivi condivisi.

Condivisione USB su Ethernet
14 giorni di prova gratuita

Video tutorial:

How to Share USB device over Network With Raspberry Pi

Condivisione di una USB da Raspberry Pi con un'app freeware

Questo metodo è, in sostanza, lo stesso modo di condividere USB su IP in Ubuntu, solo che questa volta useremo un'app diversa. Tieni presente che si tratta di software open source basato su Linux che è ancora in fase di sviluppo. Assicurati di essere pronto per un processo di configurazione tecnicamente impegnativo e non scendere se sbaglierai al primo tentativo.

Altri punti importanti di cui prendere nota prima di iniziare:

  • Questo metodo non funziona al di fuori della tua rete locale.
  • Funziona solo per la condivisione di dispositivi da PC Linux.
  • Minore è la distanza dai dispositivi condivisi, migliore è la connettività.
  • Vulnerabilità delle informazioni all'accesso non autorizzato.
  • Nessuna ottimizzazione del traffico di sorta.

Prima di tutto, configuriamo il tuo Raspberry Pi come server:

1
Utilizzando questo comando per installare l'app:
sudo apt install usbip
2
Aggiungi il modulo del kernel di cui avremo bisogno:
sudo modprobe usbip_host
echo 'usbip_host' >> /etc/modules
3
Ora, usa il seguente comando per vedere l'elenco di tutti i dispositivi USB collegati al tuo Raspberry Pi:
lsusb
4
Annota il numero ID USB di un dispositivo che intendi condividere.
5
Usa questo comando per scoprire l'ID bus del tuo dispositivo (cerca il numero ID USB del passaggio precedente e troverai il dispositivo giusto):
usbip list -p -l
6
Eseguire il comando (N è il numero ID bus del passaggio precedente):
sudo usbip bind --busid=N
7
esegui questo comando per eseguire il demone e collegare il dispositivo all'USB / IP:
usbipd

Oppure crea un servizio systemd:
vi /lib/systemd/system/usbipd.service

con la definizione (sostituire N con il numero ID USB effettivo del dispositivo):

[Unit]
Description=usbip host daemon
After=network.target

[Service] Type=forking ExecStart=/usr/sbin/usbipd -D ExecStartPost=/bin/sh -c "/usr/sbin/usbip bind --$(/usr/sbin/usbip list -p -l | grep '#usbid=N#' | cut '-d#' -f1)" ExecStop=/bin/sh -c "/usr/sbin/usbip unbind --$(/usr/sbin/usbip list -p -l | grep '#usbid=N#' | cut '-d#' -f1); killall usbipd"
[Install] WantedBy=multi-user.target
8
Esegui questi comandi per avviare quel servizio, se hai scelto di crearne uno:
sudo systemctl --system daemon-reload
sudo systemctl enable usbipd.service
sudo systemctl start usbipd.service

Ed ecco una guida alla configurazione per un cliente:

Nota: la versione client dell'app per Windows è una beta senza supporto per Windows 10. quindi non la considereremo qui.

1
Sul tuo PC client, installa l'app con questi comandi:
sudo -s
apt-get install linux-tools-generic -y
2
Abilita il modulo del kernel:
modprobe vhci-hcd
echo 'vhci-hcd' >> /etc/modules
3
Usa questo comando per connettere il dispositivo condiviso (sostituisci 0.0.0.0 con l'IP effettivo del tuo Raspberry Pi):
sudo usbip attach -r 0.0.0.0

Oppure crea un servizio systemd:
vi /lib/systemd/system/usbip.service

definito come:


[Unit]
Description=usbip client
After=network.target

[Service] Type=oneshot RemainAfterExit=yes ExecStart=/bin/sh -c "/usr/lib/linux-tools/$(uname -r)/usbip attach -r 0.0.0.0 -b $(/usr/lib/linux-tools/$(uname -r)/usbip list -r 0.0.0.0 | grep 'N' | cut -d: -f1)" ExecStop=/bin/sh -c "/usr/lib/linux-tools/$(uname -r)/usbip detach --port=$(/usr/lib/linux-tools/$(uname -r)/usbip port | grep '<Port in Use>' | sed -E 's/^Port ([0-9][0-9]).*/\1/')"
[Install] WantedBy=multi-user.target

Non dimenticare di sostituire N con un numero ID USB effettivo del tuo dispositivo e 0.0.0.0 con l'indirizzo IP del tuo Raspberry.

Salvare il servizio ed eseguire questi comandi per avviarlo:

sudo systemctl --system daemon-reload
sudo systemctl enable usbip.service
sudo systemctl start usbip.service


Se non riesci ancora ad accedere al dispositivo condiviso dal computer client, ricomincia dal passaggio 1 della guida alla configurazione del server.

Importante! NON scollegare i dispositivi USB dal Raspberry Pi mentre è condiviso con questo metodo. Spegni prima il tuo Raspberry per evitare che la perdita di dati e/o salvare il dispositivo venga danneggiato.

Prova subito USB Network Gate
14 giorni di prova gratuita

Una tabella per il confronto tra i due metodi:

Limitazione della distanza
Limitazione della distanza
Nessuna
 
Area di copertura LAN
 
Piattaforme supportate:
Piattaforme supportate:
 
 
Lato server
Lato server
✓ Windows
✓ Linux
✓ macOS
✓ Android
 
✓ Linux
 
Dalla parte del cliente
Dalla parte del cliente
✓ Windows
✓ Linux
✓ macOS
 
✓ Windows (beta)
✓ Linux
 
Ottimizzazione del traffico
Ottimizzazione del traffico
Crittografia opzionale
 
N/A
 
Sicurezza
Sicurezza
Parola d'ordine
 
N/A
 
Crittografia
Crittografia
SSL a 2048 bit
 
N/A
 
Connettività wireless
Connettività wireless
 
N/A
 
Registro delle attività
Registro delle attività
 
N/A
 

Commenti finali

Qualunque sia il metodo scelto, tieni presente che un'opzione gratuita non è sempre la migliore. e ciò che sembra risparmiare all'inizio può rivelarsi una perdita in seguito lungo la strada. Nove volte su dieci è molto più gratificante investire in un'app collaudata che sarà facile da usare e non causerà alcun problema che mettere in gioco l'intera operazione e chiudere i portelli in attesa del prossimo fallimento del tuo strumento gratuito.

USB Network Gate

Reindirizza i dispositivi USB sulla rete
14-giorni disponibili di prova gratuita
Il prezzo della licenza parte da $159.95
Disponibile per