【linux】rsyncでリモートマシンに高速バックアップする

 

 

 

概要

 

リモートマシンへバックアップするときは、ファイル転送コマンドscpを使っていましたが、いろいろrsyncが便利そうなので調べてみました。

 

 

環境

 

 

 

rsyncコマンドとは

 

ウィキペディアによるとrsyncは次のように定義されています。

rsync は、UNIXシステムにおいて、差分符号化を使ってデータ転送量を最小化し、遠隔地間のファイルやディレクトリの同期を行うアプリケーションソフトウェアである。類似のプログラムやプロトコルにはない rsync 独自の特徴として、ミラーサイトとの転送が双方向に高々1回で済む点がある。rsync はディレクトリ内容を表示し、ディレクトリやファイルをコピーできる。オプションでデータ圧縮や再帰も指定可能

 

scpコマンドのファイル転送機能をサポートする上にディレクトリ間のファイルを高速で同期するため、バックアップにはうってつけのコマンドです。

 

 

 

rsyncコマンドオプション

 

-a コピー元のディレクトリを再帰的にオーナー・グループ・パーミッション・タイムスタンプをそのままコピーします。オプション -rlptgoD と同じです。
-g グループをそのままコピーします。
-l シンボリックリンクをそのまま(ターゲットの指定を変えずに)コピーします。
-o オーナーをそのままコピーします。
-p パーミッションをそのままコピーします。
-r ディレクトリ内を再帰的にコピーします。
-t タイムスタンプをそのままコピーします。
-u コピー元とコピー先を比較し、追加・更新されたファイル・ディレクトリのみをコピーします。
-v コピーしているファイル名やバイト数などの情報を表示します。
-z 通信を圧縮します。
-4 IPv4を使用します。
-6 IPv6を使用します。
–delete コピー元にない(削除された)ファイルをコピー先で削除します。コピー元とコピー先を同期します。
–inplace 同期先ファイルに上書きコピーする。(一時ファイルを作らない)
–progress ファイルごとの進捗状況を確認する。

 

 

Rsyncコマンドは、このサイトでかなり詳しく説明されています。

 

 

 

このサイトでは具体的に例を挙げて説明してくれています。

 

rsyncコマンドで覚えておきたい使い方10個

 

 

 

 

まとめ

 

これからリモートサーバーへのバックアップもrsyncを使えば楽になりそうです。

 

 

 

関連記事

 

 

 

参考