同期およびバックアッププログラム
この wiki ページには様々なバックアッププログラムの情報を集めています。重要なデータ、特に設定ファイル (/etc/*
) やローカルの pacman データベース (/var/lib/pacman/local/*
) を定期的にバックアップすることは良策です。
目次
イントロダクション
色々なプログラムを試してみる前に、まずはあなたが必要としていることを考えて下さい。例えば、以下の質問を考察しましょう:
- バックアップメディアとして使用できるものは? (CD, DVD, リモートサーバー, 外付けハードドライブなど)
- バックアップメディアの頻度は? (毎日, 毎周, 毎月など)
- バックアップのソリューションに期待する機能は? (圧縮, 暗号化, 名前変更の対応など)
- 必要なときにバックアップをリストアする方法は?
差分バックアップ
差分バックアップを行えるアプリケーションは、最後にバックアップしたデータを記憶することで、変更を加えていないデータを二重にコピーする無駄を省きます。データをある特定の時刻までリストアするには、その時点からの全ての差分バックアップが必要になります。差分バックアップは頻繁にバックアップを行うような場合に有用です。
Rsync タイプのバックアップ
The main characteristic of this type of backups is that they maintain a copy of the directory you want to keep a backup of, in a traditional "mirror" fashion.
Certain rsync-type packages also do snapshot backups by storing files which describe how the contents of files and folders changed from the last backup (so-called 'diffs'). Hence, they are inherently incremental, but usually they do not have compression or encryption. On the other hand, a working copy of everything is immediately available, no decompression/decryption needed. A downside to rsync-type programs is that they cannot be easily burned and restored from a CD or DVD.
コンソール
- rsync — リモートのファイルを同期させるファイル転送プログラム。
- rsync almost always makes a mirror of the source.
- It is possible to restore a full backup before the most recent backup if hardlinks are allowed in the backup file system. See Back up your data with rsync for more information.
- If hard links are not allowed, it is impossible to restore a full backup before the most recent backup (but you can use --backup to keep old versions of the files).
- 全てのディストロで標準でインストールされています。
- SSH (ポート 22) や rsync プロトコル (ポート 873) で動作させることが可能。
- Win32 バージョンが存在します。
- rdiff-backup — ローカル・リモートミラーリングと差分バックアップのためのユーティリティ。
- Stores the most recent backup as regular files.
- To revert to older versions, you apply the diff files to recreate the older versions.
- It is granularly incremental (delta backup), it only stores changes to a file; will not create a new copy of a file upon change.
- Win32 バージョンが存在します。
- rsnapshot — リモートファイルシステムスナップショットユーティリティ。
- Does not store diffs, instead it copies entire files if they have changed.
- Creates hard links between a series of backed-up trees (snapshots).
- It is differential in that the size of the backup is only the original backup size plus the size of all files that have changed since the last backup.
- Destination filesystem must support hard links.
- Win32 バージョンが存在します。
- SafeKeep — rdiff-backup を使用するクライアントサーバ型バックアップシステム。
- Integrates with Linux LVM and databases to create consistent backups.
- 帯域制限。
- Link-Backup — rsync ベースのスクリプトに似ているツールですが、rsync は使っていません。2008年から開発は停止しています。
- Creates hard links between a series of backed-up trees (snapshots).
- Intelligently handles renames, moves, and duplicate files without additional storage or transfer.
- The backup directory contains
.catalog
, a catalog of all unique file instances; backup trees hard-link to this catalog. - Transfer occurs over standard I/O locally or remotely between a client and server instance of this script.
- It copies itself to the server; it does not need to be installed on the server.
- Requires SSH for remote backups.
- It resumes stopped backups; it can even be told to run for an arbitrary number of minutes.
- Unison — A program that synchronizes files between two machines over network (LAN or Inet) using a smart diff method + rsync. Allows the user to interactively choose which changes to push, pull, or merge.
- rsync-snapshot.sh — Another rsync shellscript with smart rotation (non-linear distribution) of backups. Integrity protection, Quotas, Rules and many more features.
- http://blog.pointsoftware.ch/index.php/howto-local-and-remote-snapshot-backup-using-rsync-with-hard-links/ || パッケージが存在しないか AUR で検索
- osync.sh — Osync is a robust bidirectional file synchronization tool written in bash and based on rsync. It works on local and / or remote directories via ssh tunnels. It's mainly targeted to be launched as cron task, with features turned towards automation among:
- Execution time control
- Fault tolerance with possibility to resume on error
- Soft deletion, on-conflict backups with automatic cleanup
- Alert notifications via email
- Before and /or after time controlled local and / or remote command execution
- File monitor mode
- http://www.netpower.fr/osync || パッケージが存在しないか AUR で検索
- gutbackup — Linux 環境をバックアップするためのシンプルな rsync ラッパー。
- trinkup — A 60-lines bash script which holds specified amount of incremental backups using rsync and "cp -al" to minimize amount of disk operations.
グラフィカル
- Areca Backup — An easy to use and reliable backup solution for Linux and Windows.
- Java で書かれています。
- Primarily archive-based (zip), but will do file-based backup as well.
- Delta backup supported (stores only changes).
- BackupPC — A high-performance, enterprise-grade system for backing up Unix, Linux, Windows, and Mac OS X desktops and laptops to a remote server.
- Deduplication: Identical files across multiple backups of the same or different PCs are stored only once resulting in substantial savings in disk storage and disk I/O.
- Optional compression support further reducing disk storage.
- No client-side software is needed.
- Simple but powerful web-based UI.
- Back In Time — FlyBack と TimeVault プロジェクトの影響を受けた Linux 向けのシンプルなバックアップツール。
- Creates hard links between a series of backed-up trees (snapshots).
- Really is just a front-end to
rsync
,diff
,cp
. - A new snapshot is created only if something changed since the last snapshot.
- http://backintime.le-web.org/ || backintimeAUR or as a prebuild package from coderkun's repo
- FlyBack — Apple による Mac OS X のバックアップユーティリティ、Time Machine のクローン。
- Free File Sync — Free File Sync helps you synchronize files and synchronize folders for Windows, Linux and Mac OS X. It is designed to save your time setting up and running backup jobs while having nice visual feedback along the way.
- Grsync — rsync の GTK+ インターフェイス
- luckyBackup — 簡単にファイルの同期とバックアップが行えるプログラム。
- Qt と C++ で書かれています。
- It has sync, backup (with include and exclude options) and restore capabilities.
- It can do remote connection backups, scheduled backups.
- コマンドラインモード。
- syncBackup — A front-end for rsync that provides a fast and extraordinary copying tool. It offers the most common options that control its behavior and permit very flexible specification of the set of files to be copied.
- TimeShift — TimeShift is a system restore utility which takes incremental snapshots of the system using rsync and hard-links. These snapshots can be restored at a later date to undo all changes that were made to the system after the snapshot was taken. Snapshots can be taken manually or at regular intervals using scheduled jobs.
その他のバックアップ
Most other backup applications tend to create (big) archive files and (of course) keep track of what's been archived. Creating .tar.bz2
or .tar.gz
archives has the advantage that you can extract the backups with just tar/bzip2/gzip, so you do not need to have the backup program around.
コンソール
- Arch Backup — シンプルな設定を使用する平凡なバックアップスクリプト。
- 圧縮方法を設定可能。
- Multiple backup targets.
- hdup — とてもシンプルなコマンドラインバックアップツール。
- tar.gz または tar.bz2 アーカイブを作成します。
- gpg 暗号化をサポート。
- Supports pushing over SSH.
- Multiple backup targets.
- rdup — A platform for backups that provides scripts to facilitate backups and delegates the encryption, compression, transfer and packaging to other utilities in a true Unix-way.
- Creates tar.gz archives or rsync-type copy.
- Encryption (gpg, blowfish and others); also applies for rsync-type copy.
- Compression (also for rsync-type copy).
- Duplicity — あらゆるストレージに暗号化・圧縮・差分バックアップを行うことができるシンプルなコマンドラインユーティリティ。
- gpg 暗号化と署名をサポート。
- gzip 圧縮をサポート。
- Supports full or incremental backups, incremental backup stores only difference between new and old file.
- Supports pushing over FTP, SSH, rsync, WebDAV, WebDAVs, HSi and Amazon S3 or local filesystem.
- DAR — A full-featured command-line backup tool, short for Disk ARchive.
- It uses its own format for archives (so you need to have it around when you want to restore).
- Supports splitting backups into more files by size.
- Makefile-type config files, some custom scripts are available along with it.
- Supports basic encryption.
- Automatic backup using cron is possible with sarabAUR.
- http://dar.linux.free.fr/ || darAUR kdarAUR (fontend)
- Manent — An algorithmically strong backup and archival program. NOTE: no upstream activity since 2009.
- Efficient backup to anything that looks like a storage.
- Works well over a slow and unreliable network.
- Offers online access to the contents of the backup.
- Backed up storage is completely encrypted.
- Several computers can use the same storage for backup, automatically sharing data.
- Not reliant on timestamps of the remote system to detect changes.
- Cross-platform support for Unicode file names.
- btar — tar 互換のアーカイバ
- 高速なアーカイブ作成 (マルチコアの圧縮・暗号化)
- Arbitrary chain of compression/ciphers (calls any compression/ciphering programs)
- Indexed archive retrieval or listing
- Redundancy
- Serialization through pipes (and only one file per backup)
- Can be extracted or checked with gnutar
- Differential backups of multiple levels
- Optional encoding of big files with rsync-differences
- burp — ネットワークバックアップ・復元プログラム
- Uses librsync in order to save network traffic and to save on the amount of space that is used by each backup.
- It also uses VSS (Volume Shadow Copy Service) to make snapshots when backing up Windows computers.
- 重複排除
- SSL/TLS 接続
- automation the process of generating SSL certificates
- データ暗号化
- security models [1]
- obnam — 簡単安全なバックアッププログラム。
- Snapshot backups. Every generation looks like a complete snapshot.
- Data chunk de-duplication, across files, and backup generations. This results in incremental backups.
- Optionally encrypted backups, using GnuPG.
- FUSE mountable backup repository.
- http://liw.fi/obnam/ || obnamAUR
- System Tar & Restore — フルシステムバックアップと復元を行うための bash スクリプトのセット。
- CLI とダイアログインターフェイス
- 簡単なバックアップと復元ウィザード
- .tar.gz, .tar.bz2, .tar.xz, .tar アーカイブを作成
- openssl / gpg 暗号化をサポート
- rsync を使って実行中のシステムを転送
- Grub2 と Syslinux をサポート
- Packrat — A simple, modular backup system using DAR
- Full or incremental backups stored locally, on a remote system via SSH, or on Amazon S3
- Attic — A deduplicating backup program for efficient and secure backups.
- Space efficient storage: Variable block size deduplication is used to reduce the number of bytes stored by detecting redundant data.
- Optional data encryption: All data can be protected using 256-bit AES encryption and data integrity and authenticity is verified using HMAC-SHA256.
- Off-site backups: Any data can be stored on any remote host accessible over SSH (as long as Attic is installed).
- Backups mountable as filesystems: Backup archives are mountable as userspace filesystems for easy backup verification and restores.
- Snebu — File-level deduplicating snapshot backup with SQLite3 catalog db.
- Functionally similar to rsync/snapshot style backups, however doesn't use hardlinks in the filesystem.
- Backed up files are stored in lzop-compatible files, in the designated "vault" directory.
- Metadata stored in SQLite3 db, linking backup sets to file metadata to compressed files in the vault.
- Supports arbitrary retention schedules (such as daily/weekly/monthly) which can be individually expired
- http://www.snebu.com || snebuAUR
- ZBackup — A globally-deduplicating backup tool, based on the ideas found in rsync.
- Parallel LZMA or LZO compression of the stored data
- Built-in AES encryption of the stored data
- Possibility to delete old backup data
- Use of a 64-bit rolling hash, keeping the amount of soft collisions to zero
- Repository consists of immutable files. No existing files are ever modified
- Possibility to exchange data between repos without recompression
- http://zbackup.org/ || zbackupAUR
グラフィカル
- Backerupper — ローカルネットワーク上に選択したディレクトリをバックアップするシンプルなプログラム。ユーザーの個人的なデータをバックアップすることに焦点を置いています。
.tar.gz
圧縮ファイルを作成します。- バックアップの頻度や時間、最大コピー数などを設定可能。
- Déjà Dup — シンプルな GTK+ バックアッププログラム。バックアップの複雑性 (暗号化, オフサイト, 定期) を遮蔽してバックエンドとして duplicity を利用します。
- 自動的な定期バックアップ、GUI で設定可能。
- 復元ウィザード。
- Nautilus ファイルマネージャとの統合。
- duplicity の機能を受け継いでいます。
- Synkron — フォルダ同期ツール。
- 多重フォルダ同期。
- ワイルドカードを使って同期しないファイルを設定できます。
- ファイルの復元。
- クロスプラットフォームのサポート。
コンソールとグラフィカル
- Bacula — A client-server enterprise level computer backup system for heterogeneous networks.
- This is the Swiss army knife of backup solutions.
- Can be run on a single machine or used to back up an entire network.
- Supports Linux, UNIX, Windows, and Mac OS X backup clients.
- Supports a variety of backup devices, including tape libraries.
- Can be used to backup to multiple removable storage devices.
- Provides or supports command line console, GUI, and web interfaces.
- The back-end is a catalog stored in MySQL, PostgreSQL, or SQLite.
- Provides extensive documentation.
- Appears to be the most downloaded open source backup solution
クラウドバックアップ
- Copy — 共有フォルダを作るためのソリューション。
- 15GB まで無料。
- 共有フォルダの容量は人々に分け与えられます。
- クラウドとコンピュータ間でファイルを同期するデーモン。
- あらゆるプラットフォームをサポート。
- AES-256 暗号化を提供。
- CrashPlan — オンライン・オフサイトのバックアップソリューション。
- とても値頃な無制限のオンラインスペース。
- 複数のバックアップ先に自動で差分バックアップ。
- 直感的な GUI。
- 暗号化と重複排除を提供。
- ローカルの利用でならソフトウェアはフリーです。
- 復元を行うと同時バックアップができなくなります。
- Dropbox — 人気のファイル共有サービス。
- 指定したディレクトリを監視して、dropbox.com に差分をアップロードするデーモン。
- 他のコンピュータでの変更が自動的に表示されます。
- ファイルの共有と公開ディレクトリがあります。
- 削除されたファイルを復旧することができます。
- コミュニティによるアドオン。
- 無料アカウントには 2GB のストレージが与えられます。
- Google Drive — Google が提供しているファイルストレージ・同期サービス。
- クラウドストレージ、ファイル共有、共同編集を提供します。
- 複数のクライアントが存在します。
- https://drive.google.com || google-drive-ocamlfuseAUR (free), driveAUR (free), insyncAUR (non-free)
- Jungle Disk — Amazon S3 または Rackspace Cloud Files にデータを保存するオンラインバックアップツール。
- Nautilus の拡張。
- 有料プランしかありません。
- MEGA — MegaUpload ファイル共有サービスの後継。
- 無料アカウントは 50GB で、容量が増える有料プランが存在します。
- 暗号化と重複排除の機能があります。
- 基本的にウェブインターフェイスでアクセスしますが他のツールも存在します。
- https://mega.co.nz || megatoolsAUR, megasyncAUR, megafuseAUR
- Nutstore — どこでもファイルを同期・共有できるクラウドサービス。
- 多重ファイル・フォルダ同期。
- 中国のユーザー向けのサービス。
- SpiderOak — データのバックアップ・共有・同期・アクセスと保存をするための Windows, Mac, Linux ユーザー向けオンラインバックアップツール。
- 無料・有料プランがあります。
- 無料アカウントは 2GB。
- ファイル共有・公開ディレクトリ機能があります。
- 差分バックアップと同期の両方をサポート。
- Storage Made Easy — 自らのストレージだけでなく、多数のクラウドストレージサービスへの統一的なアクセスを提供します。
- 無料・有料プランがあります。
- Free account holds 5GB and allows access to up to three other cloud storage providers.
- ウェブアクセスだけでなく、fuse によるローカルディレクトリをサポート。
- Box, Dropbox, Google Drive, Onedrive などの多数のクラウドストレージサービスをサポート。
- Tahoe-LAFS — Tahoe Least-Authority Filesystem はフリーでオープン、セキュアで分散化され、フォールトトレラント、ピアツーピアの分散データストア・分散ファイルシステムです。
- Tarsnap — BSD, Linux, OS X, Solaris, Windows (Cygwin) 向けのセキュアなオンラインバックアップサービス。
- Amazon S3 サーバーに圧縮・暗号化してバックアップ。
- cron による自動化。
- 差分バックアップ。
- あらゆるファイル・ディレクトリをバックアップ。
- クライアントはコマンドラインオンリー。
- かかる費用は使用するときだけ (帯域とストレージ)。
- Wuala — セキュアなオンラインストレージ・ファイル同期・バージョニング・バックアップサービス。
- クローズドソース。
- ファイル共有や公開ディレクトリ機能があります。
- 差分バックアップと同期の両方をサポート。
- ソーシャルネットワーク機能。
- クラウドのファイルは全てローカルであらかじめ暗号化されます。
- http://www.wuala.com/ || wualaAUR, wuala-daemonAUR – to run as daemon
- iDrive — ユニバーサルなオンラインバックアップ。
- 複数のデバイスのバックアップ。
- オンラインのファイル同期。
- リアルタイムバックアップ。
- モバイル端末のバックアップとアクセス。
- リモート管理。
- Linux 向けの GUI フロントエンドは存在しません。簡単に利用できるラッパースクリプトがあります。
- https://www.idrive.com/ || idevsutilAUR, idrive-wrapperAUR
協力型ストレージクラウドバックアップ
A cooperative storage cloud is a decentralized model of networked online storage where data is stored on multiple computers, hosted by the participants cooperating in the cloud.
- Symform — ピアツーピアのクラウドバックアップサービス。
- Unlimited free backup in exchange for 2:1 storage space contribution with an always-connected device (at least 80% uptime).
- Payment options exist.
- First 10GB of backup storage is free (no contribution needed).
- In addition to paid support, support plans in exchange for extended contribution (300GB+) exist.
- 自動・差分バックアップ。
- データはコンピュータを離れる前に暗号化されますが、キーも Symform のサーバーに保存されます [2]。
- 消費する帯域を自由に制限できます。
- Ability to have a local copy ("Hot Copy") of the backed up data on a different disk or computer.
- (Dropbox のように) ノード間でフォルダを同期させることが可能。
- クローズドソースであり、mono を使っています。Windows クライアントが存在します。
完全バックアップ
Another type of backups are those used in case of a disaster. These include application that allow easy backup of entire filesystems and recovery in case of failure, usually in the form of a Live CD or USB drive. The contains complete system images from one or more specific points in time and are frequently used by to record known good configurations.
- Q7Z — Linux 向けの P7Zip GUI。データの圧縮とバックアップを楽にします。次の圧縮ファイルを作成することが可能: 7z, BZip2, Zip, GZip, Tar。
- Updates existing archives quickly.
- Backup multiple folders to a storage location.
- Create or extract protected archives.
- Lessen effort by using archiving profiles and lists.
- Partclone — 使用しているブロックだけを考慮してパーティションをバックアップ・リストアできるツール。
- ext2, ext3, hfs+, reiser3.5, reiser3.6, reiser4, ext4, btrfs をサポート。
- 圧縮をサポート。
- Redo Backup and Recovery — A backup and disaster recovery application that runs from a bootable Linux CD image.
- http://www.redobackup.org/ || パッケージが存在しないか AUR で検索
- Clonezilla — A disaster recovery, disk cloning, disk imaging and deployment solution.
- Boots from live CD, USB flash drive, or PXE server.
- ext2, ext3, ext4, reiserfs, reiser4, xfs, jfs, btrfs FAT32, NTFS, HFS+ などをサポート。
- Uses Partclone (default), Partimage (optional), ntfsclone (optional), or dd to image or clone a partition.
- Multicasting server to restore to many machines at once.
- Partimage — Linux/UNIX 環境向けのディスク複製ユーティリティ。
- ライブ CD が存在します。
- Linux, Windows, Mac OS の様々なファイルシステムをサポート。
- 圧縮。
- Saving to multiple CDs or DVDs or across a network using Samba/NFS.
- FSArchiver — A safe and flexible file-system backup and deployment tool
- Support for basic file attributes (permissions, owner, ...).
- Support for multiple file-systems per archive.
- Support for extended attributes (they are used by SELinux).
- Support the basic file-system attributes (label, uuid, block-size) for all linux file-systems.
- Support for ntfs filesystems (ability to create flexible clones of a Windows partitions).
- Checksumming of everything which is written in the archive (headers, data blocks, whole files).
- Ability to restore an archive which is corrupt (it will just skip the current file).
- Multi-threaded lzo, gzip, bzip2, lzma compression.
- Support for splitting large archives into several files with a fixed maximum size.
- Encryption of the archive using a password. Based on blowfish from libcrypto from OpenSSL.
- Support backup of a mounted root filesystem (-A option).
- Mondo Rescue — バックアップメディアを作成するディザスタリカバリソリューション。損害を受けたシステムを再配置することができます。
- イメージベースのバックアップ。Linux/Windows をサポート。
- 圧縮率は調整可能。
- Can backup live systems (without having to halt it).
- Can split image over many files.
- Supports booting to a Live CD to perform a full restore.
- Can backup/restore over NFS, from CDs, tape drives and and other media.
- Can verify backups.
バージョニングシステム
伝統的にはソフトウェア開発の記録を付けるために使われているものですが、設定ファイルをシンプルに一つのディレクトリで管理したいと思ったら、適切なソリューションとして使うことができます。
バージョン管理システム
- Git — 速度に重点が置かれている分散型リビジョン管理・ソースコード管理システム。
- ブランチの作成・マージ・削除がとても簡単。
- ほとんど全ての操作がローカルで実行されるので、中央システムに大きな速度のアドバンテージがあります。
- Has a "staging area" or "index", this is an intermediate area where commits can be formatted and reviewed before completing the commit.
- バイナリファイルの扱いは不得手。
- Subversion — ベター CVS を目指して設計されたフル機能の集中型バージョン管理システム。
- Renamed/copied/moved/removed files retain full revision history.
- Native support for binary files, with space-efficient binary-diff storage.
- Costs proportional to change size, not to data size.
- 任意のメタデータ ("プロパティ") をファイルやディレクトリに定義できます。
- Mercurial — Python で書かれ様々なところで Git と似たところがある分散型バージョン管理システム。
- プラットフォーム非依存。
- 拡張 をサポート。
- Subversion と統一性のあるコマンドセット。
- タグをサポート。
- Bazaar — プロジェクトの履歴を追跡して他の人との協力を楽にする分散型バージョン管理システム。
- Subversion とコマンドが似ています。
- 中央サーバーの有り無し両方での動作をサポート。
- 他のリビジョン管理システムでの動作をサポート
- Unicode を完全にサポート。
- Darcs — CVS や Subversion などの伝統的な集中型ソース管理システムを置き換えるために作られた分散型リビジョン管理システム。
- オフラインモード。
- 簡単なブランチとマージ。
- Haskell で書かれています。
- あまり高速ではありません。
- http://darcs.net/ || darcsAUR
VCS ベースのバックアップ
- Gibak — Git を利用したバックアップシステム。
- バイナリ差分をサポート。
- Git の機能を全て使用 (ファイルをフィルタリングする
.gitignore
など)。 - Git のフックシステムを使って Git が保存しない情報を保存 (パーミッション, mtime, 空のディレクトリなど)。
- bup — Python と C で書かれた Git ベースの駆け出しのバックアップソリューション。
- (rsync のような) ローリングチェックサムアルゴリズムを使って巨大なファイルを細切れに分割します。
- リモートの bup サーバーに直接バックアップすることが可能。
- 改良が施されたインデックスフォーマットにより多数のファイルを追跡できます。
- ColdStorage — Git をコアに使っているもうひとつのバックアップツール、Qt を使って書かれています。