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.

Compartilhamento USB sobre Ethernet com Raspberry Pi facilitado

Editorial Team Editorial Team
Apr 1, 2021

Poder compartilhar um dispositivo USB pela rede pode ser muito benéfico em muitas situações do dia-a-dia. Digamos que você tenha um dongle de licença para o software que todos em seu escritório precisam usar. E a cada dia esse dongle é conectado e retirado mais vezes do que qualquer um pode contar e há boas chances de que em algum momento ele simplesmente se despedace. Claro, as coisas não podem continuar assim para sempre, mas comprar a licença de cada um está fora do seu orçamento. Deve haver outra maneira de contornar isso, certo?

Versão gratuita disponível
Os preços das licenças começam em $0
Disponível para
USB sobre Ethernet Raspberry Pi

Bem, como você deve ter ouvido, você pode compartilhar um dispositivo conectado a USB sobre TCP / IP com um Raspberry Pi. Para fazer isso, você obterá um software para fins especiais. E a questão principal aqui é: qual você deve escolher? Um aplicativo pago infalível ou uma solução de código aberto gratuita, mas com falhas? Vamos dar uma olhada em ambos.

O método mais óbvio de compartilhar um USB do Raspberry Pi

A primeira coisa que você precisa fazer para configurar seu Raspberry Pi como um servidor USB sobre Ethernet é certificar-se de que o Raspberry está sendo executado no Ubuntu 14.04-19.10 e está conectado ao dispositivo que você está prestes a compartilhar. Em seguida, siga estas etapas:
1
Baixe a versão correta do USB Network Gate para o seu sistema operacional.
2
No Raspberry, execute estes comandos:
dpkg -i [package]
apt-get install -f
rpm -i [package]


Ou você pode usar este: yum install [package]
3
Inicie o aplicativo e clique em “Compartilhar” ao lado do seu dispositivo.

É isso!

Depois disso, poderá aceder ao dispositivo partilhado a partir de qualquer máquina ligada à Internet, independentemente do sistema operativo dessa máquina remota (funciona com Linux, Windows e Mac) ou da distância física até ela. Nem sequer precisará de carregar o módulo do kernel para iniciar o USB Network Gate numa máquina Linux. Além disso, a aplicação pode ser utilizada em máquinas virtuais VMware, VMware ESX Server, Citrix XenServer e Microsoft Hyper-V. Este método funciona com dispositivos USB de todos os tipos e marcas. Toda a partilha/despartilha de dispositivos entra em vigor imediatamente, sem necessidade de reiniciar o sistema.

Todas as ligações estabelecidas com o USB Network Gate são totalmente seguras graças à avançada encriptação SSL de 2048 bits. Além disso, pode definir uma palavra-passe de autorização para proteção extra. Assim, não há absolutamente nenhuma hipótese de os seus dados caírem em mãos erradas.

A melhor coisa de optar pelo USB Network Gate é que não precisa realmente de transformar permanentemente o seu Raspberry Pi num servidor USB-over-IP. É uma solução multiplataforma excelente para partilhar dispositivos USB a partir de qualquer máquina que tenha e, além disso, não existe limite para o número de dispositivos partilhados. O USB Network Gate é agora gratuito para uso pessoal (partilhar um dispositivo USB), tornando a partilha profissional de USB com Raspberry Pi acessível a todos.

Compartilhando USB sobre Ethernet
Versão gratuita disponível

Tutorial em vídeo:

How to Share USB device over Network With Raspberry Pi

Compartilhando um USB do Raspberry Pi com um aplicativo freeware

Este método é, em sua essência, a mesma maneira de compartilhar USB sobre IP no Ubuntu, só que desta vez usaremos um aplicativo diferente. Lembre-se de que é um software de código aberto baseado em Linux que ainda está em desenvolvimento. Certifique-se de que você está pronto para um processo de configuração tecnicamente desafiador e não desanime se perder a primeira tentativa.

Outros pontos importantes a serem observados antes de começarmos:

  • Este método não funcionará fora de sua rede local.
  • Funciona apenas para compartilhar dispositivos de PCs Linux.
  • Quanto menor for a distância para dispositivos compartilhados - melhor será a conectividade.
  • Vulnerabilidade da informação ao acesso não autorizado.
  • Nenhuma otimização de tráfego.

Primeiro, vamos configurar seu Raspberry Pi como um servidor:

1
Usando este comando para instalar o aplicativo:
sudo apt install usbip
2
Adicione o módulo do kernel de que precisamos:
sudo modprobe usbip_host
echo 'usbip_host' >> /etc/modules
3
Agora, use o seguinte comando para ver a lista de todos os dispositivos USB conectados ao seu Raspberry Pi:
lsusb
4
Anote o número do ID USB de um dispositivo que você vai compartilhar.
5
Use este comando para descobrir o ID de barramento do seu dispositivo (procure o número do ID USB da etapa anterior e você encontrará o dispositivo certo):
usbip list -p -l
6
Execute o comando (N é o número de identificação do barramento da etapa anterior):
sudo usbip bind --busid=N
7
execute este comando para executar o demônio e conectar o dispositivo ao USB / IP:
usbipd

Ou crie um serviço systemd:
vi /lib/systemd/system/usbipd.service

com a definição (substitua N pelo número de ID USB real do seu 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
Execute estes comandos para iniciar esse serviço, se você optou por criar um:
sudo systemctl --system daemon-reload
sudo systemctl enable usbipd.service
sudo systemctl start usbipd.service

E aqui está um guia de configuração para um cliente:

Observação: a versão cliente do aplicativo para Windows é uma beta sem suporte para Windows 10. portanto, não a consideraremos aqui.

1
No PC cliente, instale o aplicativo com estes comandos:
sudo -s
apt-get install linux-tools-generic -y
2
Habilite o módulo do kernel:
modprobe vhci-hcd
echo 'vhci-hcd' >> /etc/modules
3
Use este comando para conectar o dispositivo compartilhado (substitua 0.0.0.0 pelo IP real do seu Raspberry Pi):
sudo usbip attach -r 0.0.0.0

Ou crie um serviço systemd:
vi /lib/systemd/system/usbip.service

definido como:


[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

Não se esqueça de substituir N por um número de ID USB real do seu dispositivo e 0.0.0.0 pelo endereço IP do seu Raspberry.

Salve o serviço e execute estes comandos para iniciá-lo:

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


Se você ainda não conseguir acessar o dispositivo compartilhado da máquina cliente, comece novamente a partir da etapa 1 do guia de configuração do servidor.

Importante! NÃO desconecte dispositivos USB do Raspberry Pi enquanto ele estiver sendo compartilhado por este método. Desligue o Raspberry primeiro para evitar a perda de dados e / ou salvar o dispositivo de ser danificado.

Experimente o USB Network Gate agora
Versão gratuita disponível

Uma tabela para comparação entre os dois métodos:

Limitação de distância
Limitação de distância
 
 
Plataformas suportadas:
Plataformas suportadas:
 
 
Lado do servidor
Lado do servidor
 
 
Do lado do cliente
Do lado do cliente
 
 
Otimização de tráfego
Otimização de tráfego
 
 
Segurança
Segurança
 
 
Encriptação
Encriptação
 
 
Conectividade sem fio
Conectividade sem fio
 
 
Registro de atividade
Registro de atividade
 
 

Discurso de encerramento

Qualquer que seja o método que escolher, tenha em mente que escolher a ferramenta certa faz diferença. O USB Network Gate agora oferece uma versão gratuita para uso pessoal (partilhe um dispositivo USB sem qualquer custo), perfeita para projetos individuais com Raspberry Pi e aplicações não comerciais. Para uso comercial e funcionalidades avançadas, as licenças pagas começam em $159.95. Esta aplicação testada e comprovada é fácil de usar e não causará problemas, tornando-a ideal tanto para entusiastas como para implementações profissionais.

USB Network Gate

Redirecionar dispositivos USB pela rede
Versão gratuita disponível
Os preços das licenças começam em $0
Disponível para