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

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?

Teste Gratuito de 14 dias disponível
O preço da licença começa em $159.95
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, você poderá acessar o dispositivo compartilhado de qualquer máquina conectada à Internet, independentemente do sistema operacional dessa máquina remota (funciona para Linux, Windows e Mac) ou da distância física até ela. Você nem precisa carregar o módulo do kernel para iniciar o USB Network Gate em uma máquina Linux. Além disso, o aplicativo pode ser usado em máquinas virtuais VMware, VMware ESX Server, Citrix XenServer e Microsoft Hyper-V. Este método funciona para dispositivos USB de todos os tipos e marcas. Todo o compartilhamento/cancelamento do dispositivo entra em vigor imediatamente, sem a necessidade de reinicialização do sistema.

Todas as conexões estabelecidas com USB Network Gate são totalmente seguras graças à criptografia SSL avançada de 2048 bits. Além disso, você pode definir uma senha de autorização para proteção extra. Portanto, não há absolutamente nenhuma chance de qualquer um dos seus dados cair nas mãos erradas.

Compartilhando USB sobre Ethernet
Teste gratuito de 14 dias

A melhor coisa sobre optar pelo USB Network Gate é que você realmente não precisa transformar permanentemente seu Raspberry Pi em um servidor USB sobre IP. É uma solução multiplataforma excelente para compartilhar dispositivos USB de qualquer máquina que você tenha, além disso, não há limite quanto ao número de dispositivos compartilhados.

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
Teste gratuito de 14 dias

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

Limitação de distância
Limitação de distância
Nenhum
 
Área de cobertura da LAN
 
Plataformas suportadas:
Plataformas suportadas:
 
 
Lado do servidor
Lado do servidor
✓ Windows
✓ Linux
✓ macOS
✓ Android
 
✓ Linux
 
Do lado do cliente
Do lado do cliente
✓ Windows
✓ Linux
✓ macOS
 
✓ Windows (beta)
✓ Linux
 
Otimização de tráfego
Otimização de tráfego
Criptografia opcional
 
N/A
 
Segurança
Segurança
Senha
 
N/A
 
Encriptação
Encriptação
SSL de 2048 bits
 
N/A
 
Conectividade sem fio
Conectividade sem fio
Sim
 
N/A
 
Registro de atividade
Registro de atividade
Sim
 
N/A
 

Discurso de encerramento

Seja qual for o método que você escolher, lembre-se de que uma opção gratuita nem sempre é a melhor. e o que parece ser uma economia no início pode acabar sendo uma perda mais tarde. Nove em cada dez vezes é muito mais recompensador investir em um aplicativo testado e comprovado que será fácil de usar e não causará nenhum problema do que colocar toda a sua operação em risco e travar as escotilhas esperando a próxima falha de sua ferramenta gratuita.

USB Network Gate

Redirecionar dispositivos USB pela rede
Teste Gratuito de 14 dias disponível
O preço da licença começa em $159.95
Disponível para