ウェブサイト検索

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


多くの場合、ネットワーク経由でファイルをコピーまたは共有する必要があります。私たちの多くは、rsync や scp などのツールを使用してマシン間でファイルを転送することに慣れています。このチュートリアルでは、ネットワーク内のホスト間でファイルをコピーするのに役立つ別のツール、Dat Copy (dcp) を確認します。

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

DCP の使用例

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

DCP の仕組み

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_1tecmint_2 という 2 つのホストを使用します。 video.mp4 というファイルを tecmint_1 から tecmint_2 に送信します。

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

dcp video.mp4

出力の最後に、dcp という青い線が表示されます。

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

dcp c3233d5f3cca81be7cd080712013dd77bd7ebfd4bcffcQ12121cbeacf9c7de89b

以上で、ファイルがダウンロードされました。

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

  • -r、--recursive – ディレクトリを再帰的にコピーします。
  • -n、--dry-run – どのファイルがコピーされるかを表示します。
  • --skip-prompt – プロンプトを表示せずに自動的にダウンロードします。
  • -v、--verbose – 詳細モード – 追加のデバッグ メッセージを出力します。
結論

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