「同期およびバックアッププログラム」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(→‎参照: 差し替え)
(他言語へのリンクを追加)
 
(同じ利用者による、間の10版が非表示)
5行目: 5行目:
 
[[en:Synchronization and backup programs]]
 
[[en:Synchronization and backup programs]]
 
[[ru:Backup programs]]
 
[[ru:Backup programs]]
  +
[[zh-hans:Synchronization and backup programs]]
 
{{Related articles start}}
 
{{Related articles start}}
 
{{Related|rsync によるフルシステムバックアップ}}
 
{{Related|rsync によるフルシステムバックアップ}}
376行目: 377行目:
 
|}
 
|}
   
== 分バックアップ ==
+
== 分バックアップ ==
   
分バックアップを行るアプリケーションは、最後にバックアップデータを記憶することで、変更を加えていないデータを二にコピーする無駄を省きます。データをある特定の時刻までリストアするには、時点からのての分バックアップ必要になります。差分バックアップは頻繁にバックアップを行うような場合有用です。
+
[[Wikipedia:ja:増分バックアップ|増分バックアップ]] できるアプリケーションは、前回の実行中どのようなデータがバックアップされか (いわゆる ''差分'') を記憶して考慮するため、変更されていないデータ複を保持する必要がなくなります。データを特定の時点に復元するには、最後完全バックアップと、それから復元される時点まですべての分バックアップを見つける必要があります。この種のバックアップは頻繁にバックアップを行うとって便利です。
   
  +
こちらも参照:
[[ドットファイル#バージョン管理]]も参照してください。
 
  +
* [[Wikipedia:List of backup software]]
  +
* [[Wikipedia:Comparison of backup software]]
  +
* [[Wikipedia:Comparison of online backup services]]
  +
  +
'''凡例:'''
  +
  +
* '''名前''': アプリケーション名、ArchWiki 記事または公式 Web サイトへのリンク。
  +
* '''実装''': アプリケーションのベースとなるプログラミング言語、ライブラリ、またはユーティリティ。
  +
* '''圧縮保存''': 圧縮して保存することが可能。
  +
* '''暗号保存''': 暗号化して保存することが可能。
  +
* '''差分転送''': ファイルの変更があった部分だけを転送。
  +
* '''暗号転送''': データはネットワーク上で転送されるときにデフォルトで暗号化されます。
  +
* '''FS メタデータ''': ファイルシステムのアクセス許可と属性がバックアップされます。
  +
* '''FS アクセス''': バックアップはファイルシステムに単純に保存されるか、そのままマウント可能です。
  +
* '''中断''': バックアップが中断された場合、再起動せずに再開できます。
  +
* '''マルチスレッド化''': バックアップは複数の実行スレッドで同時に実行できます。
  +
* '''ファイル名変更''': 移動・削除したファイルを検出して二重に保存・転送しない。ファイルやチャンクのチェックサムが生成されます。
  +
* '''CLI''': アプリケーションをコマンドラインから操作可能。スクリプトから実行可能。
  +
* '''インターフェース''': CLI 以外のユーザーインターフェースを備えているか。例: GUI, TUI, ウェブ。
  +
* '''ライセンス''': サーバーやクライアントアプリケーションのライセンス。
  +
* '''プラットフォーム''': Linux 以外のオペレーティングシステムのサポート。
  +
* '''開発状況''': プロジェクトが活発に開発されているか。
  +
* '''特徴''': アプリケーションを他のアプリケーションと大きく区別する特別な機能に関する簡単なメモ。
   
 
=== シングルマシン ===
 
=== シングルマシン ===
386行目: 410行目:
 
以下のアプリケーションはインストールしたマシンからデータをバックアップします。バックアップ先は外部マシンやストレージメディアなどが指定できます。
 
以下のアプリケーションはインストールしたマシンからデータをバックアップします。バックアップ先は外部マシンやストレージメディアなどが指定できます。
   
==== チャンクベースの分バックアップ ====
+
==== チャンクベースの分バックアップ ====
   
 
ファイルが変更された場合、以下のアプリケーションは変更があったファイルの一部だけを保存します。[[#ファイルベースの差分バックアップ|ファイルベースの差分バックアップ]]のアプリケーションと比べて使用する容量の効率が良くなります。特に巨大なファイルに細かく修正を加える場合は大きな効果を発揮します。一方で、バイナリ差分からファイルを再構築する必要があるため、保存したスナップショットを復元するにはバックアップを行ったアプリケーションが必要になります。
 
ファイルが変更された場合、以下のアプリケーションは変更があったファイルの一部だけを保存します。[[#ファイルベースの差分バックアップ|ファイルベースの差分バックアップ]]のアプリケーションと比べて使用する容量の効率が良くなります。特に巨大なファイルに細かく修正を加える場合は大きな効果を発揮します。一方で、バイナリ差分からファイルを再構築する必要があるため、保存したスナップショットを復元するにはバックアップを行ったアプリケーションが必要になります。
423行目: 447行目:
 
| Windows
 
| Windows
 
| {{Yes}}
 
| {{Yes}}
|
 
|-
 
| {{AUR|attic}}{{Broken package link|パッケージが存在しません}}
 
| Python
 
| {{Yes}}
 
| {{G|AES256}}
 
| {{Yes}}
 
| {{G|SSH}}
 
| {{Yes}}
 
| {{Yes}}
 
| {{Yes}}
 
| {{Yes}}
 
| {{Yes}}
 
| {{No}}
 
| BSD
 
|
 
| {{No}}
 
 
|
 
|
 
|-
 
|-
 
| {{Pkg|borg}}
 
| {{Pkg|borg}}
| Python (Attic fork)
+
| Python, C (Cython)
| {{G|lz4, zlib, lzma}}
+
| {{G|lz4, zlib, lzma, zstd}}
 
| {{G|AES256}}
 
| {{G|AES256}}
 
| {{Yes}}
 
| {{Yes}}
455行目: 462行目:
 
| {{G|サードパーティ製}}
 
| {{G|サードパーティ製}}
 
| BSD
 
| BSD
  +
| *BSD, macOS, Windows (Cygwin / WSL)[https://borgbackup.readthedocs.io/en/stable/#main-features]
| *BSD, macOS
 
 
| {{Yes}}
 
| {{Yes}}
 
|
 
|
493行目: 500行目:
 
|
 
|
 
|-
 
|-
  +
| {{AUR|duplicacy}}
| [[Déjà Dup]]
 
  +
| Go
| duplicity フロントエンド
 
  +
| {{Yes}}
 
| {{Yes}}
 
| {{Yes}}
 
| {{Yes}}
 
| {{Yes}}
  +
| {{Yes}}
  +
| {{Yes}}
  +
| {{Yes}} [https://github.com/gilbertchen/duplicacy/wiki/Storage-Backends]
  +
| {{Yes}} [https://forum.duplicacy.com/t/is-backup-pause-resume-supported/351/3]
  +
| {{Yes}} [https://github.com/gilbertchen/duplicacy/wiki/backup#-threads-n]
  +
| {{Yes}} [https://github.com/gilbertchen/duplicacy/wiki/Lock-Free-Deduplication#two-step-fossil-collection]
  +
| {{G|{{AUR|duplicacy-web}}}}
  +
| [https://github.com/gilbertchen/duplicacy/blob/master/LICENSE.md Custom (non-free)]
  +
| FreeBSD, macOS, Windows
  +
| {{Yes}}
  +
|
  +
|-
  +
| {{AUR|duplicity}}
  +
| librsync
  +
| {{G|gzip}}
  +
| {{G|gpg}}
 
| {{Yes}}
 
| {{Yes}}
 
| {{Yes}}
 
| {{Yes}}
504行目: 528行目:
 
| {{No}}
 
| {{No}}
 
| {{Yes}}
 
| {{Yes}}
| {{G|GTK+}}
+
| {{G|Déjà Dup}}
| GPLv3
+
| GPL
 
|
 
|
 
| {{Yes}}
 
| {{Yes}}
  +
|
| [[GNOME Files]] と統合。
 
 
|-
 
|-
| {{AUR|duplicati-latest}}
+
| {{AUR|duplicati-canary-bin}}
 
| C#
 
| C#
 
| {{Yes}}
 
| {{Yes}}
516行目: 540行目:
 
| {{Yes}}
 
| {{Yes}}
 
| {{Yes}}
 
| {{Yes}}
  +
| {{Yes}}
| {{R|2.0 リリースで対応予定}}
 
 
| {{No}}
 
| {{No}}
 
| {{Y|一時停止のみ}}
 
| {{Y|一時停止のみ}}
  +
| {{Yes}} [https://github.com/duplicati/duplicati/issues/3174#issuecomment-546057181]
 
| {{No}}
 
| {{No}}
| {{Yes}}
 
 
| {{Yes}}
 
| {{Yes}}
 
| LGPL
 
| LGPL
| Windows
+
| Windows, macOS
 
| {{Yes}}
 
| {{Yes}}
 
|
 
|
 
|-
 
|-
  +
| {{AUR|kopia}}
| [[Duplicity]]
 
  +
| Go, Javascript フロントエンド
| librsync
 
| {{G|gzip}}
 
| {{G|gpg}}
 
 
| {{Yes}}
 
| {{Yes}}
 
| {{Yes}}
 
| {{Yes}}
| style="text-align:center;" | ?
 
| {{No}}
 
 
| {{Yes}}
 
| {{Yes}}
| {{No}}
 
 
| {{Yes}}
 
| {{Yes}}
| {{G|Déjà Dup}}
 
| GPL
 
|
 
 
| {{Yes}}
 
| {{Yes}}
|
 
|-
 
| [[Duply]]
 
| duplicity フロントエンド
 
 
| {{Yes}}
 
| {{Yes}}
 
| {{Yes}}
 
| {{Yes}}
 
| {{Yes}}
 
| {{Yes}}
 
| {{Yes}}
 
| {{Yes}}
| style="text-align:center;" | ?
 
| {{No}}
 
 
| {{Yes}}
 
| {{Yes}}
| {{No}}
+
| APACHE
  +
| Windows, macOS, OpenBSD
| {{Yes}}
 
| {{No}}
 
| GPLv2
 
|
 
 
| {{Yes}}
 
| {{Yes}}
 
|
 
|
574行目: 581行目:
 
| {{G|Qt}}
 
| {{G|Qt}}
 
| GPLv2
 
| GPLv2
|
+
|
 
| {{Yes}}
 
| {{Yes}}
 
|
 
|
597行目: 604行目:
 
| {{Pkg|restic}}
 
| {{Pkg|restic}}
 
| Go
 
| Go
| {{No}} [https://github.com/restic/restic/issues/21]
 
| {{G|AES-256}} [https://github.com/restic/restic/blob/master/doc/Design.md]
 
| style="text-align:center;" | ?
 
 
| {{Yes}}
 
| {{Yes}}
  +
| {{G|Mandatory ([https://github.com/restic/restic/blob/master/doc/design.rst#keys-encryption-and-mac AES-256])}}
| style="text-align:center;" | ?
 
  +
| {{Yes}}
| style="text-align:center;" | ?
 
  +
| {{Yes}}
| style="text-align:center;" | ?
 
  +
| {{Yes}} [https://restic.readthedocs.io/en/latest/manual_rest.html#metadata-handling]
| style="text-align:center;" | ?
 
  +
| {{Yes}} [https://restic.readthedocs.io/en/stable/050_restore.html#restore-using-mount]
| style="text-align:center;" | ?
 
  +
| {{Yes}} [https://github.com/restic/restic/pull/310]
| style="text-align:center;" | ?
 
  +
| {{Yes}} [https://forum.restic.net/t/multithreaded-backup/3062/3]
  +
| {{Yes}}
  +
| {{No}} [https://github.com/restic/restic/issues/60]
 
| BSD
 
| BSD
  +
| OpenBSD, Windows, macOS
|
 
 
| {{Yes}}
 
| {{Yes}}
  +
| さまざまなクラウド サービス上のストレージをネイティブおよび {{Pkg|rclone}} を通じてサポートします。
|
 
 
|-
 
|-
 
| {{AUR|zbackup}}
 
| {{AUR|zbackup}}
647行目: 654行目:
 
|}
 
|}
   
==== ファイルベースの分バックアップ ====
+
==== ファイルベースの分バックアップ ====
   
ファイルに変更が加えられた場合、以下のアプリケーションは新しいファイルをそのまま保存します。[[#チャンクベースの差分バックアップ|チャンクベースの分バックアップ]]を行うアプリケーションと比較すると、ディスク容量が無駄に消費されます。ただし作成されたバックアップは完全なファイルしてそのまま復元に使うことが可能です。
+
ファイルに変更が加えられた場合、以下のアプリケーションは新しいファイルをそのまま保存します。[[#チャンクベースの差分バックアップ|チャンクベースの分バックアップ]] を行うアプリケーションと比較すると、ディスク容量が無駄に消費されます。一方アーカイブされたスナップショットは、多くの場合、バックアップアプリケーションをンストールしなくも開くことができます。
  +
  +
'''特定の凡例:'''
  +
  +
* '''ハードリンク''': 未変更のファイルが以前のバージョンへのハードリンクとして保存されるかどうか。
   
 
{| class="wikitable sortable"
 
{| class="wikitable sortable"
704行目: 715行目:
 
| Windows, Solaris, FreeBSD, NetBSD, macOS
 
| Windows, Solaris, FreeBSD, NetBSD, macOS
 
| {{Yes}}
 
| {{Yes}}
| {{AUR|sarab}}{{Broken package link|{{aur-mirror|sarab}}}} と [[cron]] による自動バックアップが可能。
 
|-
 
| {{Aur|hdup}}{{Broken package link|パッケージが存在しません}}
 
| C
 
| {{G|bzip, gzip, lzop}}
 
| {{G|gpg}}
 
| style="text-align:center;" | ?
 
| {{G|SSH}}
 
| style="text-align:center;" | ?
 
| {{No}}
 
| {{No}}
 
| {{No}}
 
| {{No}}
 
| {{Yes}}
 
| {{No}}
 
| GPLv2
 
 
|
 
|
| {{No}}
 
| バックアップ先を複数指定可能。
 
|-
 
| {{AUR|link-backup}}
 
| Python
 
| {{No}}
 
| {{No}}
 
| style="text-align:center;" | ?
 
| {{G|SSH}}
 
| style="text-align:center;" | ?
 
| style="text-align:center;" | ?
 
| {{Yes}}
 
| {{Yes}}
 
| {{R|No [http://www.scottlu.com/Content/Link-Backup.html]}}
 
| {{Yes}}
 
| {{No}}
 
| MIT
 
|
 
| {{No}}
 
| 自分自身もサーバーにコピー。
 
 
|-
 
|-
 
| {{AUR|rdup}}
 
| {{AUR|rdup}}
777行目: 752行目:
 
| {{Yes}}
 
| {{Yes}}
 
|
 
|
|-
 
| {{AUR|sbackup}}
 
| Python
 
| {{G|gzip, bzip2}}
 
| {{No}}
 
| style="text-align:center;" | ?
 
| {{G|SSH}}
 
| style="text-align:center;" | ?
 
| {{No}}
 
| {{No}}
 
| {{No}}
 
| {{No}}
 
| {{No}}
 
| {{G|GTK}}
 
| GPLv3
 
|
 
| {{Yes}}
 
|
 
 
|-
 
|-
 
| {{AUR|timeshift}}
 
| {{AUR|timeshift}}
835行目: 792行目:
 
=== ネットワークバックアップ ===
 
=== ネットワークバックアップ ===
   
以下のアプリケーションはサーバークライアントモデルに従って、ネットワークに接続され複数のマシンをまとめてバックアップます。[[#シングルマシン|シングルマシン]]のバックアップアプーションと比べると複雑な設定が必要になります。
+
これらのアプリケーションはサーバー/クライアント モデルを通じて、ネットワークに接続されている複数のマシンバックアップを一元化するように設計されています。一般に、[[同期およびバックアッププログラム#シングルマシン| シングルマシン]]ーションと比較して、デプロイはより複雑す。
  +
  +
'''特定の凡例:'''
  +
  +
* '''制御方向''': プル:サーバーがクライアントにログインします。プッシュ:クライアントがバックアップセッションを開始します。
  +
* '''インクリメントタイプ''': データの重複排除 (つまり、圧縮以外) によって使用領域を削減するために使用される戦略。
  +
** '''ファイルベース''': ファイルが変更されると、新しいバージョン全体が各スナップショットに保存されます。
  +
*** '''ハードリンク''': 未変更のファイルが以前のバージョンへのハードリンクとして保存されるかどうか。
  +
** '''チャンクベース''': ファイルの変更された ''部分'' のみが各スナップショットに保存されます。
   
 
{| class="wikitable sortable"
 
{| class="wikitable sortable"
866行目: 831行目:
 
| {{Yes}}
 
| {{Yes}}
 
| style="text-align:center;" | ?
 
| style="text-align:center;" | ?
| ファイルベース, ハードリンク [http://backuppc.sourceforge.net/faq/BackupPC.html#Backup-basics]
+
| ファイルベース,ハードリンク [http://backuppc.sourceforge.net/faq/BackupPC.html#Backup-basics]
 
| {{No}}
 
| {{No}}
 
| {{G|Web}}
 
| {{G|Web}}
889行目: 854行目:
 
| AGPLv3
 
| AGPLv3
 
| Windows, macOS
 
| Windows, macOS
  +
| {{Yes}}
  +
|
  +
|-
  +
| [[Bareos]]
  +
| C++ (Bacula からのフォーク)
  +
| ?
  +
| ?
  +
| ?
  +
| ?
  +
| ?
  +
| ?
  +
| ?
  +
| ?
  +
| ?
  +
| ?
  +
| ?
  +
| AGPLv3
  +
|
 
| {{Yes}}
 
| {{Yes}}
 
|
 
|
929行目: 912行目:
 
|-
 
|-
 
| {{Pkg|synbak}}
 
| {{Pkg|synbak}}
| ラッパー
+
| マルチツールのラッパー
 
| {{Yes}}
 
| {{Yes}}
 
| {{No}}
 
| {{No}}

2024年3月4日 (月) 19:22時点における最新版

関連記事

このページでは複数の場所のデータを同期するアプリケーションを列挙・比較しています。バックアップとして重要なデータの差分コピーを作成するなどの使い道があります。同期プログラムとバックアッププログラムは特徴が似ているため同じ記事で取り扱っています。

バックアップの概要

重要なデータのバックアップを取ることは重要です。ときどき人間や機械はデータを消失するようなポカをやらかすことがあり、データを保存している物理メディアの寿命は永遠ではありません。必要な用途にあわせて最適なプログラムを選ぶために、まずは以下の観点を考えてみてください:

  • データを保存するバックアップメディアのタイプ。例: CD, DVD, リモートサーバー, 外付けのハードドライブなど。
  • バックアップの頻度。例: 毎日, 毎週, 毎月など。
  • バックアップのソリューションとして期待する機能。例: 圧縮, 暗号化, 名前変更に追従など。
  • 必要なときにバックアップから復元する方法。

データ同期

以下のアプリケーションは単純に複数のマシン間でディレクトリを同期します。いわゆる「ミラー」です。ただし、ほとんどのアプリケーションは編集・削除ファイルを前のバージョンに戻す機能を持っています。

以下も参照してください。

凡例

  • 名前: アプリケーションの名前。
  • 実装: アプリケーションが使用しているプログラミング言語やライブラリ、ユーティリティ。
  • 圧縮保存: 圧縮して保存することが可能。
  • 暗号保存: 暗号化して保存することが可能。
  • 差分転送: ファイルの変更があった部分だけを転送。
  • 暗号転送: ネットワークを経由してデータを送信する場合にデフォルトで暗号化。
  • FS メタデータ: ファイルシステムのパーミッションや属性も同期。
  • FS アクセス: バックアップはファイルシステムにそのまま保存。もしくはファイルシステムとしてマウント可能。
  • 中断: 再起動しなくても同期を中断可能。
  • ファイル名変更: 移動・削除したファイルを検出して二重に保存・転送しない。ファイルやチャンクのチェックサムが生成されます。
  • バージョン管理: ファイルの古いバージョンをバックアップ (逆差分バックアップ)。
  • 衝突解決: ファイルの衝突は自動・手動で解決可能。衝突したファイルを無視しない。
  • 多方向: 3台以上のマシンを同期可能。
  • FS 監視: ファイルシステムの変更を検知して同期を開始可能。
  • ハードリンク: 変更されていないファイルをハードリンクとして保存可能。
  • 差分タイプ: データの重複を排除して使用容量を減らすために使われる方法。
    • ファイルベース: ファイルに変更があった場合、新しいバージョンをスナップショットに保存。
      • ハードリンク: 変更がないファイルをハードリンクとして保存。
    • チャンクベース: ファイルの変更箇所だけをスナップショットに保存。
  • CLI: アプリケーションをコマンドラインから操作可能。スクリプトから実行可能。
  • インターフェイス: CLI 以外のユーザーインターフェースを備えているか。例: GUI, TUI, ウェブ。
  • ライセンス: サーバーやクライアントアプリケーションのライセンス。
  • プラットフォーム: Linux 以外のオペレーティングシステムのサポート。
  • 開発状況: プロジェクトが活発に開発されているか。
  • 特徴: 他のアプリケーションと異なる特殊な機能など。

一覧

名前 実装 差分転送 暗号転送 FS メタデータ 中断 ファイル名変更 バージョン管理 衝突解決 多方向 FS 監視 CLI インターフェイス ライセンス プラットフォーム 開発状況 特徴
Resilio Sync (旧名 BitTorrent Sync) クローズドソース Yes Yes (LAN 暗号転送オプション) ? Yes ? Yes (前のバージョンはアーカイブフォルダに移動) ? Yes ? No Web プロプライエタリ (基本無料) macOS, Windows, Android, iOS, Windows Phone, Amazon Kindle Fire, FreeBSD Yes P2P 同期
freefilesyncAUR C++ ? SFTP [1] ? ? Yes [2] Yes [3] ? No ? No Yes GPL Windows, macOS Yes
git-annex Haskell, git rsync [4] rsync [5] ? ? ? Yes ? git remotes [6] ? Yes git-annex assistant GPLv3 macOS, Android Yes git でファイルを管理
grsync rsync フロントエンド rsync rsync ? ? ? ? ? No ? No GTK+ GPLv2 ?
gutbackupAUR rsync ラッパー rsync rsync ? ? ? ? ? No ? Yes No MIT ?
jotasyncAUR rsync の Java GUI rsync rsync ? ? ? ? ? No ? 限定的 Swing Apache v2 macOS, Windows Yes スケジューラ内蔵。
luckybackupAUR C++ rsync [7] rsync [8] ? ? ? Yes ? No ? 限定的 [9] Qt GPLv3 停滞 [10]
osyncAUR Shell rsync rsync ? Yes ? Yes ? No オプション [11] Yes No BSD Yes
rdiff-backup Python 2 Yes Yes Yes ? No Yes 差分プレビュー No No Yes No GPL Win32 ?
rsync C Yes SSH または rsync プロトコル Yes Yes No
  • --link-dest (ハードリンク [12])
  • --backup
差分プレビュー No No Yes grsync GPLv3 Win32 Yes 全ての Linux ディストリビューションに標準装備。
sparkleshare C# ? ? ? ? ? ? ? ? ? No Yes GPLv3 Windows, macOS ?
Syncthing Go Yes [13] Yes [14] 一部機能 [15] ? ? Yes [16], 前バージョンはアーカイブフォルダに移動 ファイル名を変更 [17] Yes syncthing-inotify による監視 Yes Web, GTK MPL v2 Windows, macOS, Android, BSD, Solaris Yes P2P 同期
synkronAUR C++ ? ? ? ? ? ? ? Yes ? No Qt GPLv2 Windows, macOS No
Taskd C++, python Yes Yes ? Yes ? ? ? Yes No Yes No MIT Android Yes
Unison OCaml Yes Yes 一部機能 [18] オプション [19] No Yes [20] 対話式 No No Yes GTK2 GPL Windows, macOS, FreeBSD, Android Yes [21]
名前 実装 差分転送 暗号転送 FS メタデータ 中断 ファイル名変更 バージョン管理 衝突解決 多方向 FS 監視 CLI インターフェイス ライセンス プラットフォーム 開発状況 特徴

増分バックアップ

増分バックアップ を実行できるアプリケーションは、前回の実行中にどのようなデータがバックアップされたか (いわゆる 差分) を記憶して考慮するため、変更されていないデータの重複を保持する必要がなくなります。データを特定の時点に復元するには、最後の完全バックアップと、それから復元される時点までのすべての増分バックアップを見つける必要があります。この種のバックアップは、頻繁にバックアップを行う人にとって便利です。

こちらも参照:

凡例:

  • 名前: アプリケーション名、ArchWiki 記事または公式 Web サイトへのリンク。
  • 実装: アプリケーションのベースとなるプログラミング言語、ライブラリ、またはユーティリティ。
  • 圧縮保存: 圧縮して保存することが可能。
  • 暗号保存: 暗号化して保存することが可能。
  • 差分転送: ファイルの変更があった部分だけを転送。
  • 暗号転送: データはネットワーク上で転送されるときにデフォルトで暗号化されます。
  • FS メタデータ: ファイルシステムのアクセス許可と属性がバックアップされます。
  • FS アクセス: バックアップはファイルシステムに単純に保存されるか、そのままマウント可能です。
  • 中断: バックアップが中断された場合、再起動せずに再開できます。
  • マルチスレッド化: バックアップは複数の実行スレッドで同時に実行できます。
  • ファイル名変更: 移動・削除したファイルを検出して二重に保存・転送しない。ファイルやチャンクのチェックサムが生成されます。
  • CLI: アプリケーションをコマンドラインから操作可能。スクリプトから実行可能。
  • インターフェース: CLI 以外のユーザーインターフェースを備えているか。例: GUI, TUI, ウェブ。
  • ライセンス: サーバーやクライアントアプリケーションのライセンス。
  • プラットフォーム: Linux 以外のオペレーティングシステムのサポート。
  • 開発状況: プロジェクトが活発に開発されているか。
  • 特徴: アプリケーションを他のアプリケーションと大きく区別する特別な機能に関する簡単なメモ。

シングルマシン

以下のアプリケーションはインストールしたマシンからデータをバックアップします。バックアップ先は外部マシンやストレージメディアなどが指定できます。

チャンクベースの増分バックアップ

ファイルが変更された場合、以下のアプリケーションは変更があったファイルの一部だけを保存します。ファイルベースの差分バックアップのアプリケーションと比べて使用する容量の効率が良くなります。特に巨大なファイルに細かく修正を加える場合は大きな効果を発揮します。一方で、バイナリ差分からファイルを再構築する必要があるため、保存したスナップショットを復元するにはバックアップを行ったアプリケーションが必要になります。

名前 実装 圧縮保存 暗号保存 差分転送 暗号転送 FS メタデータ FS アクセス 中断 ファイル名変更 CLI インターフェイス ライセンス プラットフォーム 開発状況 特徴
arecaAUR Java Zip, Zip64 AES128, AES256 Yes Yes Yes No 一時停止のみ No Yes Yes GPLv2 Windows Yes
borg Python, C (Cython) lz4, zlib, lzma, zstd AES256 Yes SSH Yes[22] Yes[23] Yes[24] Yes Yes サードパーティ製 BSD *BSD, macOS, Windows (Cygwin / WSL)[25] Yes
bupAUR C, Python, git Yes No Yes Yes 一部機能 Yes[26] 中断箇所から再開可能 [27] Yes Yes サードパーティ製 GPLv2 Windows, macOS, NetBSD, Solaris Yes git と同じストレージフォーマット
bupsAUR bup フロントエンド Yes No Yes Yes 一部機能 Yes 中断箇所から再開可能 [28] Yes Yes GTK 3 MIT Yes
duplicacyAUR Go Yes Yes Yes Yes Yes Yes [29] Yes [30] Yes [31] Yes [32] duplicacy-webAUR Custom (non-free) FreeBSD, macOS, Windows Yes
duplicityAUR librsync gzip gpg Yes Yes ? No Yes No Yes Déjà Dup GPL Yes
duplicati-canary-binAUR C# Yes Yes Yes Yes Yes No 一時停止のみ Yes [33] No Yes LGPL Windows, macOS Yes
kopiaAUR Go, Javascript フロントエンド Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes APACHE Windows, macOS, OpenBSD Yes
kup rsync, bup フロントエンド Yes Yes Yes Yes 一部機能 Yes No Yes bup Qt GPLv2 Yes
obnamAUR Python Yes GnuPG Yes Yes ? Yes 100MB 毎にチェックポイント ? Yes No GPLv3 Yes
restic Go Yes Mandatory (AES-256) Yes Yes Yes [34] Yes [35] Yes [36] Yes [37] Yes No [38] BSD OpenBSD, Windows, macOS Yes さまざまなクラウド サービス上のストレージをネイティブおよび rclone を通じてサポートします。
zbackupAUR C++ LZMA, LZO AES Yes Yes ? 対応予定 [39] No tar による対応 Yes No GPLv2 Yes リポジトリは変更不可ファイルで構成。
名前 実装 圧縮保存 暗号保存 差分転送 暗号転送 FS メタデータ FS アクセス 中断 ファイル名変更 CLI インターフェイス ライセンス プラットフォーム 開発状況 特徴

ファイルベースの増分バックアップ

ファイルに変更が加えられた場合、以下のアプリケーションは新しいファイルをそのまま保存します。チャンクベースの増分バックアップ を行うアプリケーションと比較すると、ディスク容量が無駄に消費されます。一方、アーカイブされたスナップショットは、多くの場合、バックアップアプリケーションをインストールしなくても開くことができます。

特定の凡例:

  • ハードリンク: 未変更のファイルが以前のバージョンへのハードリンクとして保存されるかどうか。
名前 実装 圧縮保存 暗号保存 差分転送 暗号転送 FS メタデータ FS アクセス 中断 ファイル名変更 ハードリンク CLI インターフェイス ライセンス プラットフォーム 開発状況 特徴
Back In Time Python, rsync, diff No No rsync rsync rsync Yes No No Yes [40] Yes Qt GPLv2 Yes
darAUR C++ 特殊なアーカイブ形式 Yes ? Yes ? ? ? ? No [41] Yes DarGUI GPL Windows, Solaris, FreeBSD, NetBSD, macOS Yes
rdupAUR C tar.gz gpg, blowfish など ? ? ? Yes ? No Yes Yes No GPLv3 No コマンドラインツール。
rsnapshot rsync No No Yes Yes ? ? ? ? Yes [42] Yes No GPLv2 Win32 Yes
timeshiftAUR rsync No No rsync rsync ? ? ? ? Yes No GTK GPLv3 専用デバイスにフルシステムバックアップ。 Yes
名前 実装 圧縮保存 暗号保存 差分転送 暗号転送 FS メタデータ FS アクセス 中断 ファイル名変更 ハードリンク CLI インターフェイス ライセンス プラットフォーム 開発状況 特徴

ネットワークバックアップ

これらのアプリケーションは、サーバー/クライアント モデルを通じて、ネットワークに接続されている複数のマシンのバックアップを一元化するように設計されています。一般に、 シングルマシン ソリューションと比較して、デプロイはより複雑です。

特定の凡例:

  • 制御方向: プル:サーバーがクライアントにログインします。プッシュ:クライアントがバックアップセッションを開始します。
  • インクリメントタイプ: データの重複排除 (つまり、圧縮以外) によって使用領域を削減するために使用される戦略。
    • ファイルベース: ファイルが変更されると、新しいバージョン全体が各スナップショットに保存されます。
      • ハードリンク: 未変更のファイルが以前のバージョンへのハードリンクとして保存されるかどうか。
    • チャンクベース: ファイルの変更された 部分 のみが各スナップショットに保存されます。
名前 実装 圧縮保存 暗号保存 差分転送 暗号転送 FS メタデータ FS アクセス 中断 ファイル名変更 差分タイプ CLI インターフェイス ライセンス プラットフォーム 開発状況 特徴
BackupPC Perl Yes No Yes Yes Yes No Yes ? ファイルベース,ハードリンク [43] No Web GPLv2 全て (クライアント不要) Yes 同一ファイルを多重保存しない。
Bacula (bacula-*) C++ Yes Yes ? Yes ? ? Yes ? ファイルベース [44] Yes GUI, Web AGPLv3 Windows, macOS Yes
Bareos C++ (Bacula からのフォーク) ? ? ? ? ? ? ? ? ? ? ? AGPLv3 Yes
burp-backupAUR librsync Yes Yes Yes Yes ? ? ? ? チャンクベース [45] Yes burp-ui AGPLv3 Windows Yes
safekeepAUR rdiff-backup No No ? Yes ? ? ? ? チャンクベース [46] Yes No GPL No LVM やデータベースと統合してバックアップを作成。帯域を制限可能。
synbak マルチツールのラッパー Yes No Yes Yes Yes ? ? ? ? No Web GPLv3 Yes 複数のバックアップを統合。
UrBackup (urbackup*) C++ No No Yes Yes Yes Yes Yes Yes ファイルベース, ハードリンク, シンボリックリンク [47]/チャンクベースの CoW スナップショット[48] Yes (クライアント) GUI, Web AGPLv3+ Windows, macOS Yes 同一ファイルを多重保存しない。LVM, dattobd, btrfs と統合されたファイルシステムスナップショット。
名前 実装 圧縮保存 暗号保存 差分転送 暗号転送 FS メタデータ FS アクセス 中断 ファイル名変更 差分タイプ CLI インターフェイス ライセンス プラットフォーム 開発状況 特徴

クラウドストレージ

オンラインサービス

Wikipedia:Comparison of online backup services を参照してください。

  • Amazon S3 — Amazon Simple Storage Service (Amazon S3) は開発者と IT 部門にセキュアで耐障害性・汎用性を備えたオブジェクトストレージを提供します。Amazon S3 はシンプルなウェブインターフェイスでウェブ上であらゆるデータを保存・取得することが可能です。Amazon S3 でかかる費用は実際に使用したストレージだけで、セットアップ費用や最低使用料はありません。
http://aws.amazon.com/s3/ || s3cmd
  • CloudBacko — エンタープライズ級の Linux, Mac, Windows 用クラウドバックアップツール。
    • クローズドソース。Free, Lite, Pro バージョンが存在します。
    • Java で書かれています。
    • 複数のクラウドに暗号化してバックアップします。
    • 複数のクラウドをひとつのストレージプールとして扱うことができます。
    • Free バージョンではインストールは必要ありません。
    • Pro バージョンでは Linux 用の GUI フロントが存在します。
    • Pro バージョンでは仮想マシンのバックアップができます。
http://www.cloudbacko.com/ || パッケージが存在しないか AUR で検索
  • CrashPlan — オンライン・オフサイトのバックアップソリューション。
    • とても値頃な無制限のオンラインスペース。
    • 複数のバックアップ先に自動で差分バックアップ。
    • 直感的な GUI。
    • 暗号化と重複排除を提供。
    • ローカルの利用でならソフトウェアはフリーです。
    • 復元を行うと同時バックアップができなくなります。
http://www.crashplan.com/ || crashplanAUR[リンク切れ: パッケージが存在しません]
  • Dropbox — 人気のファイル共有サービス。
    • 指定したディレクトリを監視して、dropbox.com に差分をアップロードするデーモン。
    • 他のコンピュータでの変更が自動的に表示されます。
    • ファイルの共有と公開ディレクトリがあります。
    • 削除されたファイルを復旧することができます。
    • コミュニティによるアドオン。
    • 無料アカウントには 2GB のストレージが与えられます。
http://www.dropbox.com || dropboxAUR nautilus-dropboxAUR
  • Google Drive — Google が提供しているファイルストレージ・同期サービス。
    • クラウドストレージ、ファイル共有、共同編集を提供します。
    • 複数のクライアントが存在します。
https://drive.google.com || google-drive-ocamlfuseAUR (フリー), driveAUR (フリー), griveAUR (フリー), gdrivefsAUR (フリー), insyncAUR[リンク切れ: パッケージが存在しません] (ノンフリー), gdriveAUR (フリー)
  • iDrive — ユニバーサルなオンラインバックアップ。
    • 複数のデバイスのバックアップ。
    • オンラインのファイル同期。
    • リアルタイムバックアップ。
    • モバイル端末のバックアップとアクセス。
    • リモート管理。
    • Linux 向けの GUI フロントエンドは存在しません。簡単に利用できるラッパースクリプトがあります。
https://www.idrive.com/ || idevsutilAUR[リンク切れ: アーカイブ: aur-mirror], idrive-wrapperAUR[リンク切れ: アーカイブ: aur-mirror]
  • Jungle Disk — Amazon S3 または Rackspace Cloud Files にデータを保存するオンラインバックアップツール。
    • GNOME Files の拡張。
    • 有料プランしかありません。
http://www.jungledisk.com/ || nautilus-junglediskAUR[リンク切れ: アーカイブ: aur-mirror]
  • MEGA — ファイル共有サービス MegaUpload の後継。
    • 無料アカウントは 50GB で、容量が増える有料プランが存在します。
    • 暗号化と重複排除の機能があります。
    • 基本的にウェブインターフェイスでアクセスしますが他のツールも存在します。
https://mega.co.nz || megatoolsAUR, megasyncAUR, megasync-qt5AUR[リンク切れ: パッケージが存在しません], megafuse-gitAUR, megacliAUR, nemo-megasyncAUR, nautilus-megasyncAUR, thunar-megasyncAUR
  • Nutstore — どこでもファイルを同期・共有できるクラウドサービス。
    • 多重ファイル・フォルダ同期。
    • 中国のユーザー向けのサービス。
http://jianguoyun.com/ || nutstoreAUR
  • rsync.net — オフサイトバックアップのクラウドストレージ。
    • UNIX システムで動作する、SSH/SFTP/SCP ツールでアクセスできる ZFS ファイルシステム。
    • 自動的な ZFS のスナップショットによる簡単な rsync 同期。
    • borg や attic を使用する場合に 特別割引料金 が適用されます。
http://www.rsync.net/ || rsync/SSH, borg/atticAUR[リンク切れ: パッケージが存在しません]
  • SpiderOak — データのバックアップ・共有・同期・アクセスと保存をするための Windows, Mac, Linux ユーザー向けオンラインバックアップツール。
    • 無料アカウントは 2GB で60日間のトライアル。
    • ファイル共有・公開ディレクトリ機能があります。
    • 差分バックアップと同期の両方をサポート。
https://spideroak.com/ || spideroak-oneAUR
  • Storage Made Easy — 自らのストレージだけでなく、多数のクラウドストレージサービスへの統一的なアクセスを提供します。
    • 無料・有料プランがあります。
    • 無料アカウントでは 5GB の容量があり、他のクラウドストレージプロバイダに3つまでアクセスできます。
    • ウェブアクセスだけでなく、fuse によるローカルディレクトリをサポート。
    • Box, Dropbox, Google Drive, Onedrive などの多数のクラウドストレージサービスをサポート。
http://storagemadeeasy.com/ || smestorageAUR[リンク切れ: アーカイブ: aur-mirror]
  • Tarsnap — BSD, Linux, macOS, Solaris, Windows (Cygwin) 向けのセキュアなオンラインバックアップサービス。
    • Amazon S3 サーバーに圧縮・暗号化してバックアップ。
    • cron による自動化。
    • 差分バックアップ。
    • あらゆるファイル・ディレクトリをバックアップ。
    • クライアントはコマンドラインオンリー。
    • かかる費用は使用するときだけ (帯域とストレージ)。
http://www.tarsnap.com || tarsnap
  • Yandex Disk — Yandex.ru によって作成された無料のクラウドストレージサービス。インターネットで繋がったどこからでも写真・動画・文章にアクセスできます。
https://disk.yandex.ru/ || yandex-diskAUR

マルチサービスクライアント

  • Déjà Dup — シンプルな GTK+ バックアッププログラム。バックアップの複雑性 (暗号化, オフサイト, 定期) を遮蔽してバックエンドとして duplicity を利用します。
    • 自動的な定期バックアップ、GUI で設定可能。
    • 復元ウィザード。
    • GNOME Files ファイルマネージャとの統合。
    • duplicity の機能を受け継いでいます。
https://launchpad.net/deja-dup || deja-dup[リンク切れ: テンプレートパラメータに問題があります]
  • Duplicati — クラウドストレージサービスやリモートのファイルサーバーに暗号化・差分・圧縮したバックアップを安全に保存するバックアップクライアント。Amazon S3, Windows Live SkyDrive, Google Drive (Google Docs), Rackspace Cloud Files, WebDAV, SSH, FTP などに対応。Duplicati はオープンソースでフリーです。
http://www.duplicati.com/ || duplicati-latestAUR
  • Duplicity — あらゆるストレージに暗号化・圧縮・差分バックアップを行うことができるシンプルなコマンドラインユーティリティ。
    • gpg 暗号化と署名をサポート。
    • gzip 圧縮をサポート。
    • 完全・差分バックアップをサポート、差分バックアップは新旧ファイルの差分だけを保存。
    • 多数のプロトコル によるプッシュ通信をサポート。
https://www.nongnu.org/duplicity/ || duplicity
  • Duply — duplicity の動作を助けるフロントエンド:
    • バックアップごとにプロファイルで設定。
    • プロファイル・キーリング間のキーの自動インポート・エクスポート。
    • バッチ操作が可能 (例: backup_verify_purge)。
    • バックアップの実行前後にスクリプトを実行可能。
    • duplicity の状態を事前チェック。
http://www.duply.net/ || duplyAUR
  • rclone — Google Drive, Amazon S3, Openstack Swift / Rackspace Cloud Files / Memset Memstore, Dropbox, Google Cloud Storage, ローカルのファイルシステムとファイルやディレクトリを同期するコマンドラインプログラム。
http://rclone.org/ || rclone

オンプレミス

  • Cozy — ハック・ホスト・削除ができるパーソナルクラウド。
https://cozy.io || cozy-depsAUR[リンク切れ: パッケージが存在しません]
  • OpenStack — データセンターの巨大な計算資源・ストレージ・ネットワークをダッシュボードや OpenStack API で管理します。OpenStack は有名企業で使われておりヘテロジニアスネットワークに最適のオープンソーステクノロジーです。
http://www.openstack.org/ || パッケージが存在しないか AUR で検索
  • ownCloud — 場所を選ばないストレージ領域を提供するソフトウェアスイート。
http://owncloud.org/ || owncloudAUR
http://nextcloud.com/ || nextcloud
  • Pydio — ファイル共有と同期のための成熟したオープンソースウェブアプリケーション。
https://pydio.com/ || pydioAUR
  • Seafile — オープンソースクラウドストレージシステム。ファイル同期、プライバシー保護、チームワークをサポート。
http://seafile.com/ || seafile-serverAUR seafile-clientAUR
  • StackSync — 様々な組織の要求に応えられるオープンソースの拡張性の高いパーソナルクラウド。サーバーに送信する前にクライアント側でデータを暗号化してセキュリティを保つことに特別な注意が払われています。
http://stacksync.org/ || パッケージが存在しないか AUR で検索
  • Syncany — セキュリティとストレージの抽象化が中心のクラウドストレージ・ファイル共有アプリケーション。
https://www.syncany.org/ || syncanyAUR

バージョン管理システム

バージョン管理システムは伝統的にはソフトウェア開発の記録を付けるために使われているものですが、設定ファイルをシンプルに一つのディレクトリで管理したいときでも、適切なソリューションとして使うことができます。

Wikipedia:Comparison of revision control software も参照してください。

  • Bazaar — プロジェクトの履歴を追跡して他の人との協力を楽にする分散型バージョン管理システム。
    • Subversion とコマンドが似ています。
    • 中央サーバーの有り無し両方での動作をサポート。
    • 他のリビジョン管理システムでの動作をサポート
    • Unicode を完全にサポート。
http://bazaar.canonical.com/en/ || bzrAUR
  • Darcs — CVS や Subversion などの伝統的な集中型ソース管理システムを置き換えるために作られた分散型リビジョン管理システム。
    • オフラインモード。
    • 簡単なブランチとマージ。
    • Haskell で書かれています。
    • あまり高速ではありません。
http://darcs.net/ || darcs
  • Git — 速度に重点が置かれている分散型リビジョン管理・ソースコード管理システム。
    • ブランチの作成・マージ・削除がとても簡単。
    • ほとんど全ての操作がローカルで実行されるので、中央システムに対して速度のアドバンテージが大きい。
    • "ステージングエリア"または"インデックス"が存在し、中間領域としてコミットを完了する前に整形したりレビューすることができます。
    • バイナリファイルの扱いは不得手。
https://git-scm.com/ || git
  • Mercurial — Python で書かれており、様々なところで Git と似たところがある分散型バージョン管理システム。
    • プラットフォーム非依存。
    • 拡張 をサポート。
    • Subversion と統一性のあるコマンドセット。
    • タグをサポート。
http://mercurial.selenic.com/ || mercurial
  • Subversion — ベター CVS を目指して設計されたフル機能の集中型バージョン管理システム。
    • ファイルの名前変更・コピー・移動・削除がリビジョン履歴に残ります。
    • バイナリをネイティブでサポートし、効率的な binary-diff ストレージを使用。
    • コストはデータサイズではなく変更サイズに比例します。
    • 任意のメタデータ ("プロパティ") をファイルやディレクトリに定義できます。
http://subversion.apache.org/ || subversion

参照