追加のソフトウェアをインストールせずに、LAN 上の 2 台の Ubuntu コンピューター間でファイルを転送するにはどうすればよいですか?

追加のソフトウェアをインストールせずに、LAN 上の 2 台の Ubuntu コンピューター間でファイルを転送するにはどうすればよいですか?

Sambaまたはopenssh-serverをインストールすれば、2台のUbuntuコンピュータ間でファイルを共有できることは知っています。ファイルを共有する方法はありますか?それなし追加パッケージをインストールしますか?

同じ LAN 上の 2 つのシステムに Ubuntu をインストールしましたが、インターネットに接続できませんでした。openssh-server がどちらのシステムにもインストールされていないため、通常のファイル転送方法 (scp) が失敗しました。追加のパッケージをインストールしないと、Personal File Sharing を使用できませんでした。最終的には、転送に netcat を使用しましたが、これは最適ではなく、一般ユーザーにとっては直感的ではありません。

そこで、すぐに使える Ubuntu インストール (または少なくとも、Ubuntu デスクトップ CD で利用可能なパッケージ) でこれを実行する方法を知っている人がいたら知りたいです。

ありがとう!

答え1

を使用して特定のディレクトリに移動しcd、次のコマンドを使用して現在のディレクトリを Web サーバーとして提供できます。

python -m SimpleHTTPServer

他のマシンでアドレスにアクセスしますhttp://server-ip:8000/

ここで、「server-ip」は、ソース コンピュータで「ifconfig」を実行したときに「inet addr:」の下に表示されるものです。たとえば、ソース コンピュータでの ifconfig の出力が次のように始まる場合:

eth0      Link encap:Ethernet  HWaddr 00:30:67:d5:a7:a4  
          inet addr:10.0.0.3  Bcast:10.0.0.255  Mask:255.255.255.0
          ...

次に、ターゲット コンピュータで、ブラウザーを次のように指定します。

 http://10.0.0.3:8000/

答え2

Python のモジュールよりも高速なものが必要な場合SimpleHTTPServer(これは素晴らしいし、最も簡単な方法だと思います)、netcat (ncユーティリティ) を使用できます。これは生の TCP を使用するため、HTTP プロトコルに伴うオーバーヘッドは発生しません。

たとえば、config.xmlホスト germany.local からホスト france.local (両方とも ubuntu を実行) にファイルをコピーする場合は、次の手順に従う必要があります。

  1. ターゲットホスト france.local で実行:

    nc -l -p 7000 > copied_config.xml
    

    (ポート 7000 で受信データをリッスンし、そのデータをファイルに書き込む nc プロセスが開始されますcopied_config.xml)

  2. ソースホスト germany.local で以下を実行します:

    nc -q 0 france.local 7000 < config.xml
    

それだけです!

また、確認することもできますこの役に立つハウツーより詳しい説明については

関連情報