Je veux créer un système de transfert de données USB vers USB sous Linux (de préférence Ubuntu). Pour cela, je ne veux utiliser aucun matériel ou commutateur externe ( sauf ce câble ). Ce sera comme monter une clé USB sur un système, mais dans ce scénario, l'un des systèmes Linux va être monté sur l'autre. Comment puis-je créer cela?
Y a-t-il des modules du noyau disponibles, étant donné que mon expérience avec la programmation du noyau est très basique?
kernel
drivers
usb
kernel-modules
the_Strider
la source
la source
Réponses:
Oui, cela est possible, mais ce n'est pas possible en coupant deux câbles USB avec des connecteurs USB-A (ce qui se passe normalement dans l'USB de votre carte mère) et en connectant les câbles de données. Si vous connectez les lignes d'alimentation USB sur un tel câble fabriqué par vous-même, vous risquez de faire frire votre puce de gestion USB intégrée . N'essayez pas ca a la maison!
Sur la plupart des cartes informatiques, les puces gérant l'USB sont uniquement des hôtes. Non seulement cela, mais il gère également une grande partie de la communication de bas niveau pour accélérer les choses et réduire la charge sur le processeur. Ce n'est pas comme si vous pouviez programmer votre ordinateur pour gérer les broches du port USB afin qu'il agisse comme s'il n'était pas un hôte. Les dispositifs capables, au niveau de la puce, de basculer entre agir en tant qu'hôte et se connecter à un hôte sont peu nombreux, car cela nécessite une puce beaucoup plus chère¹. C'est par exemple pourquoi les appareils intelligents comme mon smartphone, GPS et ebook, bien qu'ils fonctionnent tous sous Linux ou quelque chose de similaire, ne me permettent pas
ssh
de communiquer lorsqu'ils sont connectés via un câble USB normal.Ces appareils passent en mode stupide lorsqu'ils sont connectés, où l'hôte (mon système de bureau) peut utiliser son stockage comme disque USB. Après la déconnexion, l'appareil utilise la même interface qu'un hôte pour accéder aux données (bien qu'aucune connexion par câble ne soit requise, cela se produit en interne). Avec ce type d'appareils, même si Linux fonctionne sur les deux, il n'y a pas de communication entre les systèmes, c'est-à-dire les linux . Cela indépendamment d'un câble micro ou mini USB normal les connectant à mon bureau.
Entre deux ordinateurs de bureau, ce qui précède est normalement impossible à faire car vous auriez besoin d'un câble USB-A vers USB-A, ce qui n'est pas courant (car cela ne fonctionnerait pas avec les puces normales qui pilotent les connexions de toute façon).
Toute solution faisant USB vers USB avec deux connecteurs USB-A que j'ai vu, est basée sur un câble qui a de l'électronique entre les deux. (un peu comme un câble USB → série branché sur un câble série → USB, mais tout en un). Ceux-ci nécessitent normalement des pilotes pour effectuer le transfert, bien que vous puissiez utiliser UUCP ou autre chose sur un tel câble, comme vous le feriez sur un port série "normal". Cela nécessite probablement une configuration inetd et appropriée pour vous connecter également à l'autre ordinateur.
¹ Le seul appareil que je possède et dont le logiciel peut être modifié de cette manière est une carte Arduino avec exactement une telle puce spéciale. Juste cette puce a rendu la carte deux fois plus chère qu'une carte Arduino normale.
la source
ssh
pour communiquer lorsque vous êtes connecté via un câble USB normal" Je peux vous mal comprendre, mais je peuxssh
dans mon iPhone jailbreakéopenssh
sur l'appareil, vous pouvezssh
en (via Wi-Fi), et si vous installezafc2
(Apple File Conduit) sur l'appareil, vous devriez être en mesure de parcourir le système de fichiers via USB (sans lui, vous êtes "emprisonné" "à/var/mobile
)Oui, l'USB 3.0 permet le transfert de données en duplex intégral, avec un câblage 3.0. Les spécifications se trouvent dans la section 5.5.2 des spécifications USB. Le lien vers ces spécifications est donné plus haut dans une autre réponse. http://www.gaw.ru/pdf/interface/usb/USB%203%200_english.pdf
Les câbles deviennent plus faciles à trouver - ils peuvent être achetés sur Amazon, par exemple, pour moins de 8,00 $. assurez-vous d'acheter des TRANSFERT DE DONNÉES, câbles mâle A à mâle A. Les versions plus récentes de Linux prennent en charge le transfert.
J'espère que cela aide quelqu'un - j'ai moi-même cherché la réponse pendant un bon moment.
la source
vous pouvez utiliser un périphérique de pont USB qui est disponible dans un facteur de forme de câble comme celui-ci ... http://www.usbgear.com/link/ (avertissement vidéo de lecture automatique)
la source
Il est techniquement possible si l'un des appareils prend en charge USB OTG , dans lequel un port peut agir en tant que maître ou esclave. Vous pouvez configurer le périphérique OTG comme esclave et le laisser agir comme un disque dur USB (vous n'avez donc même pas besoin d'un pilote spécial sur le maître).
C'est ce que font beaucoup de téléphones et de certains appareils photo. Si vous les connectez à une imprimante, ils deviennent maîtres; s'ils sont connectés à un PC, ils deviennent esclaves.
la source
La façon dont je le ferais est d'utiliser 2 câbles série USB et une connexion nulle entre. Ensuite, vous pouvez utiliser xmodem, zmodem, kermit, etc. pour transférer des fichiers, ou utiliser ppp ou slip pour un réseau entre deux machines. À l'ancienne mais fonctionnera.
Thad
la source