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

rsyncを使用してファイルをバックアップします

定期的にファイルをバックアップすることは、サーバーを管理する上で不可欠な部分です。

rsyncを使用して、保存するときに個々のファイルをすべてダウンロードできます。 変更されたファイルのみをダウンロードするため、バックアップ作業が簡単になり、時間と帯域幅を節約できます。

rsyncをインストールする

rsync デフォルトでは、ほとんどのLinuxディストリビューションで使用できます。ただし、手動でインストールする必要がある場合は、ディストリビューションのパッケージマネージャーを使用してインストールできます。たとえば、次のコマンドは一般的なLinux®rsyncです。 インストールコマンド:

Ubuntuオペレーティングシステム

sudo aptitude install rsync

Gentoo

sudo emerge rsync

CentOS

sudo yum install rsync

注: 別のシステムにファイルをダウンロードする場合は、両方のシステムにrsyncが必要です。 インストールされています。

rsyncでSSHを使用する

ファイルとシステムを安全に保つために、ファイルをアップロードまたはダウンロードするときは必ず暗号化を使用してください。次の例では、rsyncでSecureShell(SSH)プロトコルを使用しています データを安全に保つため。 SSHを使用したくない場合は、rsyncを実行するたびにパスワードの入力を求められます 。

rsyncを使用する場合 バックアップを自動化するには、宛先サーバー(バックアップディレクトリが配置されている場所)が元のサーバーにアクセスできることを確認します。

あるサーバーから別のサーバーにファイルをバックアップするには、宛先サーバーで次のコマンドを実行します。

rsync -e 'ssh -p 30000' -avlP --delete --stats [email protected]:/home/demo /backup

次の説明では、コマンドの各部分について説明します。

  • -e 'ssh -p 30000'

    rsyncを確認します SSHプロトコルを使用し、ポートを設定します。

  • -avl

    次のオプションを含むショートカット:

    • -a

      アーカイブ 。ファイルの権限設定を保存します。

    • -v

      詳細rsyncについての詳細情報を返します やっています。 rsyncの情報量を変更できます -vを削除して戻ります 、または-vvを使用して詳細情報をリクエストできます または-vvv-vvvを使用して冗長モードを設定する rsyncに関するすべての情報を返します プロセス。

    • -l

      リンク 。ソースサーバーで作成したシンボリックリンク(symlinks)を保持します。

    • -P

      進捗状況 。各ファイル転送の進行状況を表示します。

  • --delete

    不要になった(つまり、元のフォルダーから削除された)ファイルを宛先フォルダーから削除します。通常、スペースを節約するためにファイルを削除しますが、後で必要になる可能性がある場合は、削除する前にバックアップされたコピーがあることを確認してください。

  • --stats

    ファイル転送ステータスに関する出力を追加します。

  • [email protected]:/home/demo

    バックアップする元のフォルダ。

    注: rsync /home/demoを区別します および/home/demo/ 。末尾にスラッシュを付けると、rsync ディレクトリの内容をコピーしますが、ディレクトリを再作成しません。この例では、あるシステムから別のシステムにフォルダをバックアップするため、末尾のスラッシュを省略すると、ディレクトリ構造全体が複製されます。

  • /backup/

    ファイルを配置するバックアップサーバー上のフォルダを識別します。

出力は次の例のようになります。

receiving file list ...
31345 files to consider
./
tuning-primer.sh
       42596 100%  533.30kB/s    0:00:00 (xfer#2, to-check=31331/31345)
bin/
bin/Backup
         618 100%    7.74kB/s    0:00:00 (xfer#3, to-check=31310/31345)
bin/Search
         455 100%    5.70kB/s    0:00:00 (xfer#4, to-check=31309/31345)
configs/
configs/php.ini
         114 100%    1.43kB/s    0:00:00 (xfer#5, to-check=31307/31345)
public_html/
...
...

前の例では、rsync 31,345個のファイルのリストを受け取ります。これは、rsyncが初めてであるためです。 実行され、それらすべてをダウンロードします。 rsyncの場合 再度実行され、最後のバックアップ以降に変更されたファイルのみがバックアップフォルダに同期されます。


Linux
  1. rsyncを使用してWebサイトをミラーリングする

  2. SCP と Rsync を使用して Linux でファイルを転送する方法

  3. 実用的な例を含む Linux rsync コマンド

  1. Rsyncで転送されたファイルのみをログに記録しますか?

  2. SCPとRsyncでファイルをコピーする

  3. cp -r 隠しファイルなし

  1. rsyncを使用してファイルを同期する

  2. rsync ディレクトリ内の N 個の最新ファイル

  3. rsync を使用してデフォルトでファイルを除外するにはどうすればよいですか?