Memo/Linux/rdiff-backup

https://dexlab.net:443/pukiwiki/index.php?Memo/Linux/rdiff-backup
 

rdiff-backup / ミラー+差分バックアップ

  • ネットワーク対応のディレクトリバックアップツール。もちろんローカルにも使える。
  • 「rsync -e ssh」の代わりに使用する事ができる
  • 差分バックアップが可能。
  • ミラー+差分となる。バックアップ先に「rdiff-backup-data」という特別なディレクトリが作成される。その中に差分データが格納される。
  • 復元に必要な情報、サブディレクトリ、ハードリンク、デバイスファイル、パミッション、所有者のユーザー/グループID、etc等もバックアップされる。
  • 指定した期間を過ぎた差分を削除できる。2週間以前は削除等。
  • 日本語ドキュメント http://seki.jpn.org/modules/pukiwiki/index.php?rdiff-backup

除外リスト/含めるリスト

以下、エラーが出る不思議。

  • 含める
    --include-globbing-filelist filename

インストール

設定

  • 最初のコマンドは、/ のバックアップを/storage/backup 以下へ取る。
    次のコマンドは、2 週間以上前のバックアップを消す。
    • /etc/cron.daily/rdiff-backup
      #!/bin/bash
      /bin/nice /usr/bin/rdiff-backup \
        -v5 \
        --exclude /tmp \
        --exclude /cdrom \
        --exclude /floppy \
        --exclude /lost+found \
        --exclude /mnt \
        --exclude /storage \
        --exclude /tmp \
        --exclude /proc \
        --exclude '**/sumii/pride-*.mpg*' \
        / /storage/backup/
      
      /bin/nice /usr/bin/rdiff-backup \
        -v5 \
        --force \
        --remove-older-than 2W \
        /storage/backup/
  • 次のようにすれば 10 日前の /home/nayuta/.tcshrc を /tmp/my_tcshrc へ取り出せる。sudo する必要があるかもしれない。
    rdiff-backup -r 10D /storage/backup/home/nayuta/.tcshrc /tmp/my_tcshrc
  • /storage/backup は IDE のセカンダリディスク上にある。reiser-fs で、LVM 上にある。
    /dev/hda1 on / type ext3 (rw,errors=remount-ro)
    /dev/lvm1/backup on /storage type reiserfs (rw)

サンプルスクリプト

  • バックアップ元で動作させるタイプ
    #!/bin/bash
    
    # 指定ホストへバックアップし、一定時間以上古い履歴は削除する
    #
    # cp svn-rdiff-backup.cron /etc/cron.daily/svn-rdiff-backup.cron
    # chmod 755 /etc/cron.daily/svn-rdiff-backup.cron
    
    # バックアップ元
    svn_backup="/root/svn-backup"
    
    # 2週間より前の差分は削除する
    delete_option="2W"
    
    # eth0 のIPアドレス取得
    ipaddr=`/sbin/ifconfig eth0 | grep 'inet addr:' | awk -- '{print $2}' | awk -F':' -- '{print $2}'`
    
    # バックアップ先
    backup_to=172.16.0.126::/var/backup/$ipaddr/svn-backup
    
    if [ -d "$svn_backup" ]
    then
      /usr/bin/rdiff-backup $svn_backup $backup_to
      /usr/bin/rdiff-backup --force --remove-older-than $delete_option $backup_to
    fi

リンク


添付ファイル: fileexclude.list 1563件 [詳細] filerdiff-backup.php 2011件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2018-09-15 (土) 07:31:38 (9d)