Configure o sistema Linux como um dispositivo OTG

2

Eu estou querendo saber se é possível fazer um sistema Linux aparecer como um periférico USB.

Como smartphones que podem mudar de mestre para escravo dependendo do dispositivo ao qual estão conectados, gostaria de saber se é possível ter o mesmo comportamento com um sistema Linux.

Por exemplo, eu tenho um Linux embutido em um cartão com conectores usb, quando eu conecto uma chave usb a esta placa, a chave usb é detectada como um dispositivo escravo e montada no sistema de arquivos. Agora, se eu conectar meu cartão ao meu computador, eu gostaria que ele fosse reconhecido como um dispositivo escravo usb também.

Você acha que é possível?

Eu encontrei uma pergunta semelhante, mas não respondi Use um diretório Linux como um dispositivo USB-OTG para um telefone Android?

Eu finalmente decidi tentar configurar o sistema como dispositivo MTP em vez de apresentá-lo como armazenamento em massa por esses motivos:

  • Proteger contra o acesso a arquivos simultâneos
  • Protege o sistema contra falhas ou danos devido ao acesso simultâneo a arquivos ou à má montagem / desmontagem
  • Possibilidade de expor o sistema de arquivos raiz sem desmontá-lo ou interrompê-lo
  • Possibilidade de compartilhar vários dispositivos

Como eu tenho alguns problemas para configurá-lo, eu abri uma nova questão aqui para os interessados.

    
por Arkaik 18.08.2017 / 14:51

1 resposta

2

Sim, você pode, mas não é fácil. Você precisa de pelo menos um pouco de trabalho com isso.

Trabalhar como um escravo USB é suportado no Linux desde aproximadamente 2,4 ou 2,6 vezes. Você precisa encontrar um chip compatível, depois um dispositivo e depois comprá-lo em algum lugar (normalmente, para alugá-lo na Internet).

Especificamente para dispositivos USB, há suporte para dispositivos periféricos e também para dispositivos de bloco.

Sua pesquisa no Google: gadget USB do Linux. Você também pode ter uma pequena tarefa de escavação nos fontes do kernel, este modo do lado do escravo provavelmente não está incluído na maioria dos kernels de distribuição, então você terá que recompilá-lo.

Aqui é uma referência antiga, mas ainda assim real, sobre isso. Outros podem ser úteis resposta .

    
por 18.08.2017 / 15:03