DCP - ピアツーピアネットワークを使用してLinuxホスト間でファイルを転送する


人々はしばしばネットワークを介してファイルをコピーまたは共有する必要があります。私たちの多くは、マシン間でファイルを転送するためにrsyncやscpなどのツールを使用しています。このチュートリアルでは、ネットワーク内のホスト間でファイルをコピーするのに役立つ別のツール - データコピー dcp )について説明します。

Dcp では、ファイルをコピーするためにSSHを使用または設定する必要はありません。さらにそれはあなたのファイルを安全にコピーするための設定を必要としません。

Dcp は複数のシナリオで使用できます。たとえば、生成されたキーを提供するだけで、ファイルを複数の同僚に簡単に送信できます。 SSHキーを設定せずに2台のマシン間でデータを同期することもできます。ファイルをリモートマシンにコピーするか、Linux、MacOS、Windows間でファイルを共有します。

Dcp は、コピーするように指定したファイルのリスト用の dat アーカイブを作成します。その後、生成された公開鍵を使用して、他のホストからファイルをダウンロードすることができます。コピーされたデータは、データアーカイブ用の公開鍵を使用して暗号化されます。

LinuxシステムにDcpをインストールする方法

dcp のインストールはnpmパッケージマネージャで完了できます。ただし、 npm を使用したくない場合は、リリースページから dcp パッケージの最新リリースをダウンロードできます。

npm を使用してパッケージをインストールするには、LinuxシステムにNPMをインストールしてから、次のコマンドを使用してインストールする必要があります。

# npm i -g dat-cp

zipアーカイブを使用したい場合は、wgetコマンドを使用してそれらをダウンロードできます。

# wget https://github.com/tom-james-watson/dat-cp/releases/download/0.7.4/dcp-0.7.4-linux-x64.zip

次に、 dcp および node-64.node バイナリを任意のパス、できればPATH変数に含まれているパスに移動します。たとえば/usr/local/bin/

# mv dcp-0.7.4-linux-x64/dcp dcp-0.7.4-linux-x64/node-64.node /usr/local/bin

LinuxシステムでDcpを使用する方法

dcp の使い方は簡単で、前述のように追加の設定は必要ありません。コピーして実行したいファイルを選択するだけです。

ソースホストからファイルを送信します。

# dcp file

ターゲットホストで以下のコマンドを実行します。

# dcp <generated public key>

最初は少し奇妙に見えるかもしれませんが、実際には非常に簡単です。このチュートリアルでは、 temcint_1 tecmint_2 の2つのホストがあります。 tecmint_1 から tecmint_2 video.mp4 というファイルを送信します。

tecmint_1 からファイルを送信しています:

# dcp video.mp4

出力の最後に青い線が表示されます。これはdcp &lt; generated public key&gt; です。

その後、次のコマンドを使用して他のホストからファイルを取得できます。以下の例では、 tecmint_2 からファイルをダウンロードします。

# dcp c3233d5f3cca81be7cd080712013dd77bd7ebfd4bcffcQ12121cbeacf9c7de89b

これで、ファイルはダウンロードされました。

Dcp には、実行できるいくつかの追加オプションがあります。

  • -r, --recursive – recursively copy directories.
  • -n, --dry-run – show what files would have been copied.
  • --skip-prompt – automatically download without a prompt.
  • -v, --verbose – verbose mode – prints extra debugging messages.

Dcp は非常にシンプルで使いやすいツールで、ホスト間でファイルをコピーまたは共有するのに役立ちます。このプロジェクトが好きなら、さらにdcp gitページを見てください。