Unidade flash USB em rede [fechada]

2

Existe um produto que pode ser conectado a um computador e aparecer como uma unidade flash USB, enquanto que na realidade também é um servidor Samba / FTP? Ao longo das linhas do cartão Eye-Fi (www.eye.fi), mas com fio e mais configurável. Também pode ser um cabo de transferência de dados especial que permite conectar um computador em rede separado completo. O computador de destino deve ver apenas um dispositivo USB, nenhum driver especial, nenhuma alteração de configuração de rede deve ser necessária neste computador.

Clarification_001: O computador de destino (ou dispositivo incorporado) deve poder gravar neste "stick" USB. No entanto, seria bom se os dados estivessem visíveis na rede com algum atraso, digamos, alguns minutos. Esta varinha mágica poderia copiar entre o flash & rede em lote, a cada poucos minutos. BTW: A minha necessidade imediata é colher logs de dispositivos incorporados de difícil acesso à rede.

Clarificação_002: Mais pesquisas me trouxeram para dispositivos chamados "Analisadores USB Bus / Protocol".
gostar: link Estes provavelmente fariam o trabalho. Eles são caros ($ 800- $ 3000 ++). Internamente, eles devem duplicar os dados USB, eu deduzo que o dispositivo Eu estou procurando deve custar menos de US $ 500.

TIA, Radim

    
por Radim Cernej 19.06.2009 / 03:12

2 respostas

2

Você me interessou por isso. Não consigo encontrar uma solução "pronta para uso", mas tenho uma pista sobre hardware e uma ideia aproximada de uma implementação. (O preço pode estar fora do que você está procurando, mas você pode conseguir um acordo de quantidade se for para um dispositivo de produção real.)

O chip controlador PLX NET2280 USB suportou o modo alvo. Ele foi substituído pelo NET2282, e você pode encontrar mais informações aqui: link

A API "USB Gadget" do Linux suporta este controlador. Há um "kit de desenvolvimento rápido" disponível com o controlador em uma placa PCI pronto para ser usado.

Supondo que o dispositivo com o qual você está tentando conversar esteja usando o sistema de arquivos FAT (menor denominador comum para dispositivos embarcados usando armazenamento USB, normalmente), você pode implementar um volume FAT virtual e acessá-lo com uma montagem de loopback em um Linux máquina quando não estiver em uso pelo host USB. Como o FAT não é um sistema de arquivos multi-writer, você terá que implementar algum tipo de protocolo para lidar com a contenção entre o host e o destino. Eu exportaria um arquivo como o volume FAT para o host USB, e observaria o acesso de gravação para o volume se tornando inativo por um período de tempo, quando eu entraria e faria alterações.

Há uma boa chance de seu destino estar sendo armazenado em cache (ou, no mínimo, supondo que o estado do armazenamento USB não seja alterado). Um possível "out" para isso é o seguinte: Se o host que você está conectando não tiver um problema com o alvo "desaparecendo" e "reaparecendo" você pode "desconectar" durante um período quiescente como descrito acima, então imediatamente "plug in" com um novo sistema de arquivos vazio, tudo pronto para ser usado.

Se isso for para uso geral com qualquer host USB, você sempre terá problemas de compatibilidade com alguns dispositivos que não esperam que nada esteja no destino USB além de armazenamento estúpido. (Seria interessante ver como o Eye-Fi contorna isso.) OTOH, se você está fazendo isso para um propósito único, você provavelmente poderia ficar bastante íntimo com o código do dispositivo host e descobrir a melhor forma de interagir com isso.

Que ideia divertida. Não é realmente uma coisa "Falha do servidor", por si só, mas divertida, no entanto! Para isso, eu acho que você vai precisar de alguns hackers hardcore que estejam familiarizados com o trabalho no espaço integrado.

    
por 21.06.2009 / 06:52
1

Sim - isso deve ser bem possível, desde que você não tenha necessidade de ver o mesmo armazenamento no computador como na rede.

Se você quiser ver a mesma coisa, tal configuração exigiria algum tipo de sistema de arquivos multimount. Você está tentando exportar os mesmos dados por meio de um protocolo de sistema de arquivos de rede e nível de bloco.

Você pode conseguir se safar (mais ou menos) se o dispositivo de armazenamento permitir apenas que o computador monte seu armazenamento como somente leitura. Funcionaria na maior parte do tempo:)

    
por 19.06.2009 / 03:32