GNU/Linux >> Linux の 問題 >  >> Linux

Linuxrsyncコマンドの例

Rsync、リモート同期の略 は、2つのLinuxシステム間でファイルをコピーおよび同期するために使用されるLinuxコマンドです。これは、ファイルまたはディレクトリに加えられた追加の変更が別のLinuxシステムに複製されるように機能します。

Linux rsyncコマンドを使用すると、Linuxシステムとサーバー間でバックアップをローカルおよびリモートでシームレスにコピーおよび同期できます。この記事では、rsyncコマンドと一緒に使用できるさまざまなコマンドオプションについて説明します。

Linuxrsyncコマンドの基本構文

rsyncの構文を以下に簡単に要約します。

$ rsync options source destination

rsyncコマンドで使用されるオプション

  • -z :これはデータを圧縮します。
  • -v :これにより、プロセスが冗長モードで表示されます。
  • -r :このオプションはデータを再帰的にコピーします(ただし、このオプションはデータ転送中にタイムスタンプとファイル権限を保持しません)。
  • -h :これは、人間が読める形式で情報を出力します。
  • -a :これにより、ファイルを再帰的にコピーできるだけでなく、シンボリックリンク、タイムスタンプ、ファイルのアクセス許可、およびユーザーとグループの所有権も保持されます。

ファイルとディレクトリをローカルにコピーする

以下に示す例を使用して、Linuxマシンのある場所から別の場所にファイルをローカルで同期できます。

$ rsync -zvh backup.tar /opt/backup_dir

上記の例では、tarball backup.tar コピーされ、/opt/backup_dirに同期されます ディレクトリ。

サンプル出力

ディレクトリをある場所から別の場所にローカルにコピーするには

構文はファイルのコピーに似ていますが、この場合は-aを使用します。 再帰コピーのフラグ。

以下の例では、deb_packagesをコピーして同期しています。 /opt/backup_dirへのディレクトリ ディレクトリ。

$ rsync -azvh deb_packages /opt/backup_dir

サンプル出力

リモートサーバーとの間でファイルまたはディレクトリをコピー/同期する

ディレクトリをリモートサーバーにコピーするには、サーバーのユーザー名とIPアドレスを宛先フォルダーと一緒に指定する必要があります。

以下の例では、deb_packages ディレクトリは、IP 66.152.163.19を使用してリモートサーバーにコピーされます rootユーザーの資格情報を使用し、rootホームディレクトリに保存します。

$ rsync -avz deb_packages [email protected]: 

サンプル出力

ディレクトリをリモートサーバーからローカルPCにコピーして同期するには

リモートシステムからローカルLinuxシステムにファイルをコピーして同期するには、以下の例を使用します

$ rsync -avzh [email protected]:documents /opt/backup_dir

上記の例では、ディレクトリdocuments IP 66.152.163.19を使用してリモートシステムから再帰的にコピーされます /opt/backup_dirのローカルシステムに ディレクトリ。

SSH経由のRsyncコマンド

RsyncをSSHプロトコルと一緒に使用して、Linuxシステムとの間で送受信されるファイルを保護または暗号化できます。これにより、ネットワークを介して転送しているデータをだれも盗聴できないようになります。

SSH経由のrsyncを使用して、ローカルサーバーからリモートサーバーにファイルをコピーするには:

この例では、-eを使用します プロトコル(この場合はSSH)を指定するためのrsyncのオプション。

$ rsync -avhze ssh backup.tar [email protected]:/backup_dir

サンプル出力

SSH経由のrsyncを使用して、リモートサーバーからローカルシステムにファイルをコピーするには:

前の例と同様に、rsyncコマンドは-eと一緒に使用されます オプション。

$ rsync -avzhe ssh [email protected]:/backup_dir /tmp/

サンプル出力

rsyncコマンドでデータを転送している間の進行状況を表示する

データ転送中の進行状況を表示する場合は、--progressを使用してください オプション。これにより、ファイルとデータ転送が完了するまでの推定時間が表示されます。

サンプル出力

–includeおよび–excludeオプションを指定したLinuxrsyncコマンド

上記のこれらのオプションは、ユーザーがincludeするのに役立ちます およびexclude 同期プロセスに含めたり除外したりする可能性のあるファイル。

以下の例では、rsyncコマンドはそれらのファイルを/var/libに含めます。 「p」で始まり、他のすべてのファイルとディレクトリを除外するディレクトリ。

$ rsync -avz --include 'p*' --exclude '*' /var/lib [email protected]:/opt/backup_dir

サンプル出力

転送するファイルの最大サイズを設定する

「–max-size」オプションを使用して、転送および同期される最大ファイルサイズを定義できます。

$ rsync -avzh --max-size='50M' deb_packages [email protected]:/opt/backup-dir

上記のコマンドは、deb_packages内のファイルの転送を制限します ディレクトリを50メガバイトにします。これは、50MB以下のファイルのみが転送および同期されることを意味します。

サンプル出力

転送が成功した後にソースファイルを削除する

ファイルのバックアップコピーをリモートターゲットに作成しているが、ローカルコピーを保持したくない場合は、–remove-source-filesを使用します。 示されているオプション。

$ rsync --remove-source-files -zvh backup.tar /tmp/mybackups/

サンプル出力

この記事がお役に立てば幸いです。ご不明な点がございましたら、フィードバックをお寄せください。


Linux
  1. Linuxでのrsyncコマンドの実用例

  2. 8 Linux TR コマンドの例

  3. Linux での rm コマンドの例

  1. Linux での ps コマンドの例

  2. Linux での sa コマンドの例

  3. w Linux でのコマンド例

  1. Linux での ac コマンドの例

  2. Linux での df コマンドの例

  3. Linux での du コマンドの例