2台のUbuntuマシン間でUSBケーブルを介したデータ転送は可能ですか?


20

Ubuntu 14.04を搭載した2台のマシンが隣接しています。しかし、ネットワークはありません((W)LAN)。USBケーブルを介して、あるマシンから別のマシンにデータを転送できますか?もしそうなら、どのように?


いいえ、そうは思いません。そのためには、「ブリッジケーブル」と呼ばれるものが必要です。
mikewhatever

一般的に、いいえ。USBはPCから周辺機器向けに設計されました。タブレットや携帯電話では周辺機器の定義を曖昧にしましたが、PCからPCへの単純な古いUSB A-to-Aケーブルを接続することはできません。Windows Easy Transfer Cable以外にA-to-Aケーブルを見たことはないと思います。
クリストファー人質

2
「Ubuntu 14.04」は厳密に言えばハードウェアを識別しませんが、USBデバイスまたはOTGインターフェースを備えたさまざまな準埋め込みプラットフォームまたはタブレットで実行されるビルドがありますが、 PCで一般的なUSBホストインターフェイス。
クリスストラットン

1
これは、superuser.com / a / 1165890/41259で回答されています
chx

回答:


16

USBケーブルとは、Windows転送ツールケーブルのことです。

ここに画像の説明を入力してください

その場合、これを行う最も簡単な方法は、イーサネットケーブルで2台のマシンを直接接続することです。最新のNICは十分にスマートであるため、クロスオーバーケーブルさえ必要ありません。2台のコンピューターが接続されたことを検出すると、自動的にクロスオーバーします。


2
私が聞いたところでは、写真にあるようなUSB転送ケーブルは、通常、とにかくLinuxでは一種のネットワークとして扱われます。一部の超軽量ラップトップには有線イーサネットジャックがないため、これは有利な場合があります-オプションは2つのUSB-EthernetアダプターとRJ45パッチコードです(ただし、これらは他のネットワーク目的にも使用できます)。
クリスストラットン

@ChrisStrattonそうですね。これらのケーブルは基本的に2つのNICです。
デビッドシュワルツ

1
@DavidSchwartzは、Linuxが伝統的にそれらをどのように扱うかという点でそうです。しかし、Windowsはそれらを完全に異なるものとみなし(伝えられるところによるとクロスプラットフォーム転送は機能しません)、アーキテクチャ的にはおそらく2つのFIFOと2つのUSBデバイスエンジンの間にあるいくつかのロジック、または単に共通のバッファメモリから仮想FIFOを作成するロジックを調整するだけです。
クリスストラットン

2
@ChrisStrattonこれらはすべて、Prolific 2501のバリアント(2301、25A1、なんでも)にほぼ基づいています。物理的には、管理用のマイクロコントローラーを備えた2つのバックエンドコントローラーの間に2つのFIFOがあります。しかし、これは2つのNICを相互に接続した場合に得られるものと本質的に同じです。ドライバーがそれをどのように提示するかは、もちろんドライバーの選択です。これらのケーブルで動作する同じWindowsソフトウェアは、製造元がロックダウンを選択しない限り、通常、バックツーバックNICでも動作します。
デビッドシュワルツ

これはUSB 2.0の回答であり、USB 3.0の回答はsuperuser.com/a/1165890/41259にあります
-chx

3

概念実証のために絶対にこれを行わなければならなかった場合、各マシンのシリアルポートをエミュレートすることで、「ラップリンク」転送の古代の芸術をシミュレートできます。

USBを1つでシリアル化し、USBをもう1つでシリアル(ヌルモデム)にして、中間の性別の問題を整理します。

迅速ではありません。


8
「速くはないだろう。」
チャーリー


0

マシンにType-BコネクタまたはOn-the-Goコネクタのいずれかがある場合、USBガジェットドライバーを使用できます。ドライバーをロードするには

# modprobe g_ether

MACアドレスとベンダーおよび製品IDを構成できます。

# modinfo g_ether
filename:       /lib/modules/version/kernel/drivers/usb/gadget/legacy/g_ether.ko
license:        GPL
author:         David Brownell, Benedikt Spanger
description:    RNDIS/Ethernet Gadget
srcversion:     5E4C828D24F6E477C9CB5EE
depends:        libcomposite,u_ether,usb_f_rndis
intree:         Y
vermagic:       version SMP mod_unload modversions 
parm:           idVendor:USB Vendor ID (ushort)
parm:           idProduct:USB Product ID (ushort)
parm:           bcdDevice:USB Device version (BCD) (ushort)
parm:           iSerialNumber:SerialNumber string (charp)
parm:           iManufacturer:USB Manufacturer string (charp)
parm:           iProduct:USB Product string (charp)
parm:           qmult:queue length multiplier at high/super speed (uint)
parm:           dev_addr:Device Ethernet Address (charp)
parm:           host_addr:Host Ethernet Address (charp)
parm:           use_eem:use CDC EEM mode (bool)

モジュール名の後に渡すことにより、ドライバーをロードするときにモジュールパラメーターを設定できます。

# modprobe g_ether host_addr=00:dc:c8:f7:75:05 dev_addr=00:dd:dc:eb:6d:f1

どちらのマシンもUSBデバイスとしての操作をサポートしていない場合、このアプローチは機能しません。

警告: 2つのUSB Type-Aコネクタを接続しないでください。せいぜい、マザーボードを損傷する可能性があります。最悪の場合、火災が発生する可能性があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.