Linuxの読者の皆さん、こんにちは。Linuxのヒントとコツシリーズからさらに別のすばらしい記事をお届けします。今回は、知っておく必要のある、あまり知られていない2つのLinuxユーティリティを使用します。
この記事では、 ncを使用して2台のLinuxコンピューター間でファイルを転送する方法について説明します。 (ネットワークユーティリティ )および pv (パイプビューア )コマンド、次に進む前に、これら2つのコマンドについて説明します。
nc Netcatの略です 「スイスアーミーナイフ」とよく指摘されます 」は、ネットワークのデバッグと調査に使用されるネットワークツールであり、TCPまたはUDP、ポートスキャン、ファイル転送などを使用したネットワーク接続の作成にも使用されます。信頼できるバックエンドとして作成されており、プログラムやスクリプトで特別に使用されます。これは、ほぼすべての種類のネットワーク接続を生成でき、多くの機能が組み込まれているためです。
pv 要するに、Pipe Viewerは、パイプラインを介して送信されるデータの進行状況を監視するためのターミナルベースのツールであり、ユーザーは進行状況バーでデータの進行状況を確認し、経過時間、完了率、現在のスループットレート、転送されたデータの合計、および推定値を表示できます。プロセスを完了する時間です。
pv(パイプビューアー)コマンドを使用してデータの進行状況を監視する方法
次に、両方のコマンドを組み合わせて2台のLinuxコンピューター間でファイルを転送する方法を見てみましょう。この記事では、次のように2台のLinuxマシンを使用します。
Machine A with IP : 192.168.0.4 Machine B with IP : 192.168.0.7
注: netcatは使用しないことを強くお勧めします ログインや認証を使用しないため、パブリックネットワークを介してデータを送受信するには、クライアントIPとリスニングポート番号のみが必要であり、ネットワークを介して送信されるデータはセキュリティで保護されていないため、常に上級Linuxユーザー用に予約されています。保護されたローカルネットワークで使用することをお勧めします。
データのセキュリティがより重要な状況では、常にSSH経由のrsyncまたはSSH経由のscpを使用します。
それでは、 ncの簡単な例から始めましょう。 およびpv コマンドを実行する前に、両方のユーティリティをシステムにインストールする必要があります。インストールしない場合は、提案されているように、それぞれの配布パッケージマネージャーツールを使用してインストールしてください。
# yum install netcat pv [On RedHat based systems] # dnf install netcat pv [On Fedora 22+ versions] # apt-get install netcat pv [On Debian and its derivatives]
2台のLinuxマシン間でファイルを転送するにはどうすればよいですか?
CentOS-7-x86_64-DVD-1503.iso
という1つの大きなファイルを送信するとします。 コンピューターからA Bへ ネットワーク経由で、 ncを使用してこれを実現する最も簡単な方法 TCPネットワークを介してファイルを送信するために使用されるネットワークユーティリティ、 pv データとタールの進行状況を監視する データを圧縮して転送速度を向上させるユーティリティ。
LinuxマシンAの場合
最初にマシン「A」にログインします ‘IPアドレス192.168.0.4を使用して、次のコマンドを実行します。
# tar -zcf - CentOS-7-x86_64-DVD-1503.iso | pv | nc -l -p 5555 -q 5
上記のコマンドで使用されるオプションについて説明します:
- tar -zcf =tarは、アーカイブファイルと引数を圧縮/解凍するために使用されるテープアーカイブユーティリティです -c 新しい.tarアーカイブファイル-fを作成します アーカイブファイルの種類を指定し、 -z gzipでアーカイブをフィルタリングします。
- CentOS-7-x86_64-DVD-1503.iso =ネットワーク経由で送信するファイル名を指定します。ファイルまたはディレクトリへのパスを指定できます。
- pv =データの進行状況を監視するパイプビューア。
- nc -l -p 5555 -q 5 =tcpおよび引数を介したデータの送受信に使用されるネットワークツール-l 着信接続をリッスンするために使用されます。-p555 使用する送信元ポートを指定し、 -q 5 秒数待機してから終了します。
LinuxマシンBの場合
次に、マシン「 B」にログインします。 ‘をIPアドレス192.168.0.7で使用し、次のコマンドを実行します。
# nc 192.168.1.4 5555 | pv | tar -zxf -
これで、ファイルはコンピュータ Bに転送されます 、操作の実行速度を確認できます。 nc には、他にもたくさんのすばらしい使い方があります。 (まだカバーされていませんが、すぐにそれについて書きます)そして pv (これに関する詳細な記事はすでにここで説明しました)コマンド、例をご存知の場合は、コメントでお知らせください!