Rsync は、Linux のデータ同期機能で有名なコマンド ライン ユーティリティです。これを使用して、同じシステムまたは異なるシステム上のファイルを同期できます。さらに、ファイル圧縮、暗号化、選択的同期など、他のツールよりも優れた機能を提供します。ソース ディレクトリとターゲット ディレクトリを比較して、新しく追加または更新されたファイルのみをソース ディレクトリから転送できます。
これらの機能はすべて、待ち時間を短縮し、生産性を向上させるのに役立ちます。しかし、多くの Linux ユーザーは、rsync の機能が効率的なファイル転送であることを知りません。このブログでは、Linux でディレクトリ間のファイル転送を効率的に行うために rsync を使用する方法を簡単に説明します。
Rsync を使用して Linux のディレクトリ間で効率的なファイル転送を行う方法
Linux で rsync を使用する方法はいくつかあるため、このセクションをさらに分割して、さまざまなシナリオでの使用法を説明します。
Rsync のインストール
rsync ユーティリティはほとんどの Linux システムにプリインストールされていますが、次のコマンドを実行してインストールできます。
須藤 適切な インストール rsync -そして
次に、インストールされている rsync のバージョンを確認します。
完了したら、次のコマンドを実行してソースとターゲットの同期を開始します。
rsync -O ソース 目標
-
- ソースは、ファイルの同期元のディレクトリです。
- Target は、それらのファイルを保存する宛先ディレクトリです。
ローカルファイル転送
次のコマンドを使用して、rsync を使用して同じシステム内のファイルをコピーして貼り付けることができます。
須藤 rsync -の ソースパス / ターゲットパス /
-
- 「-a」オプションは、転送中にファイル属性を保持するアーカイブを表します。
- 「-v」は、どのファイルが転送されているかを確認できる冗長モードです。
たとえば、これを使用してファイルを「Downloads」ディレクトリから「Document」ディレクトリにコピーしてみましょう。
須藤 rsync -の ~ / ダウンロード ~ / 書類
リモートファイル転送
主に rsync を使用して、ネットワーク経由で接続された 2 台のマシン間でファイルをリモート転送できます。このためには、次の指定された構文を使用してリモート ホストを指定する必要があります。
rsync -の -それは ssh ユーザー @ リモートホスト: / パス / に / ソース / / パス / に / 目標 /
「-e ssh」オプションを使用すると、このファイル転送にセキュア シェルまたは SSH を使用するようにシステムに指示できます。
ターゲット ディレクトリからファイルを削除する (ソースには存在しない)
両方のディレクトリを同一にし、同様のファイルを含めるとします。この場合、ターゲット ディレクトリに存在する余分なファイル (存在する場合) を削除する必要があります。幸いなことに、rsync では、「- -delete」オプションを使用してこれを行うことができます。その方法を知るには、次のコマンドを実行します。
rsync -の - 消去 / パス / に / ソース / / パス / に / 目標 /
転送中にファイルを除外する
ディレクトリ全体を転送する際、一部のファイルまたはサブディレクトリを除外する必要がある場合があります。したがって、「– –exclude」オプションは次のように使用できます。
rsync -の --除外する 'ファイル名' / パス / に / ソース / / パス / に / 目標 /
ドライラン
大規模なディレクトリに rsync を使用する場合は、最初に予行演習を行う必要があります。このようにして、システムは、ファイルを転送せずにこのコマンドが何を行うかを示します。ただし、これにより、不要なファイルの転送を防ぐことができます。ドライランを実行するには、次のコマンドで「– –dry-run」オプションを使用します。
rsync -の --ドライラン / パス / に / ソース / / パス / に / 目標 /
たとえば、「Downloads」ディレクトリから「Documents」ディレクトリにファイルを同期する前に、ドライランを実行します。
進行状況インジケーターを表示する
一部のユーザーは転送の進行状況を確認するために進行状況インジケーターを使用することを好むため、次のコマンドを使用してこれを有効にできます。
rsync -の - 進捗 ソース / 目標 /
進行状況インジケーターを使用した前の例を使用すると、次の図に示すような結果が得られます。
結論
Rsync は、Linux のディレクトリ間でファイルを転送するための強力なツールです。このブログでは、ローカルおよびリモートのデータ同期などのさまざまな使用例について説明します。さらに、転送中のファイルの除外や宛先からのファイルの削除など、いくつかの機能を容易にする複数のサブコマンドを備えています。これらすべての機能にもかかわらず、ユーザーが間違いを犯す可能性は依然としてあります。したがって、大きなファイルの転送については、常に予行演習を実行する必要があります。