バックアップはそんなに単純じゃない

Backups Aren't Simple

家族の写真を外付けハードディスクに移したが、父親がセットトップボックス用にフォーマットして消してしまった経験から、バックアップの複雑さを解説。単なるコピーでは不十分で、スナップショット、GFSローテーション、重複排除、3-2-1ルール、クラウドストレージ、データベースのダンプなど、考慮すべき点が山積み。最終的にはBorgやResticのような実績あるツールを使い、定期的にリストアテストをすることが重要だと説く。

「人間は二種類に分けられる。壊滅的なデータ損失を経験した者と、これから経験する者だ」
  1. mamonoleechi

    バックアップの3原則(どこで読んだかは覚えていない)

    - 複数のバックアップを取る(オンラインなら同じハードウェアブランドやホストを使わない)

    - バックアップを確認する(何か問題があれば、最初の原則で別のバックアップがある)

    - バックアップを同じ場所に保管しない(自宅が浸水したり火事になったりしたら、とても役に立つ)

  2. publlus_enigma

    人生で4回、後悔するデータ損失事故を経験した。

    最初は、家の外の電柱に直撃した雷だった。今まで聞いた中で最も大きな音だっただけでなく、電流が電話線を伝って内蔵ファックスモデムに入り、周囲のものをすべて焼き尽くした。私は10歳だった。バックアップはあったが、フロッピーだけで、すべてをカバーしていなかった。

    2回目はOneDriveにデータを保存していたときだ。「ライフタイム」で削除されにくいストレージに関する利用規約の変更と、ダウンロードが使い物にならないほど遅いクライアント、そしてデータ回収の締め切りが重なり、ほとんどのファイルを失った。

    3回目は休暇中のデジタルカメラのSDカード故障で、コントローラチップが壊滅的に死に、カードは完全に認識されなくなった。新品のSony 128GBカードで、Toshiba製だったが、よくある問題のようだった。今は2枚のカードに同時に撮影している。

    そして4回目は…バックアップの実行中だった。誤ったスクリプトがソースコンテンツを削除したが、新しいバックアップのためのスペースを空けるために既存のバックアップも削除してしまっていた。その結果、書き換え可能なメディアを使うのがしばらく怖くなったが、バックアップ自体がハイリスクな活動だと思う。

  3. AdieuToLogic

    私の友人はかつてVeritas[0]でエンタープライズデータ保持ソリューションを作っていた。彼らの製品について「バックアップを作っている」と言ったら、彼はこう訂正した:

    我々はバックアップ事業ではない。復元事業だ。

    0 - https://en.wikipedia.org/wiki/Backup_Exec

  4. Helmut10001

    私はJim Salterのsanoid/syncoid[1]を使ったオフサイトのプルモード同期によるZFSスナップショットがとても気に入っている。ZFSはその上にあるすべてのOS/ファイルシステムの基盤だ。ZFSデータセットを整理し、一時データと永続データを分離する良いシステム(例:[2])があれば、バックアップ要件の90%はすでに満たされている。

    [1]: https://github.com/jimsalterjrs/sanoid

    [2]: https://du.nkel.dev/blog/2026-05-16_rootless_docker_virtiofs_proxmox/

  5. ebrahimh

    3ホストのインフラ向けに3-2-1的なバックアップをセットアップ中で、間違いなくRestic + Backrestに傾いている。

    すべてのホストは同じCoreOSセットアップ(https://github.com/ebrahim37/infra-template)で動いており、コンテナボリュームは1つの中央のvolumes/フォルダに置かれ、バックアップが必要なのはそれだけだ。

    実装はこう考えている:

    vps1:

    - カスタムshエントリポイントを持つresticコンテナが、24時間ごとにvolumes/をhomelabにバックアップ

    homelab:

    - backrestコンテナでvolumes/をバックアップ、prune/checkを実行、リポジトリをオフサイトに複製

    - rest-serverコンテナでvps1、homelab、オフサイトからのバックアップを保存

    offsite:

    - resticコンテナが24時間ごとにvolumes/をhomelabにバックアップ

    - rest-serverコンテナでhomelabからのバックアップのコピーを保存

    唯一の注意点はデータベースのバックアップで、コンテナを停止してボリューム/データベースデータをバックアップしてからコンテナを起動するか、pg dumpなどを使う必要がある。

    重複排除は素晴らしく、過去1年の各週のスナップショットを莫大なストレージコストなしに持てる。

  6. flippingheck

    > 人間は2種類いる:壊滅的なデータ損失を経験した者と、これから経験する者だ。

    これは経験的な主張だが、現実に基づいているのだろうか?

    99%の人はバックアップを取っておらず、おそらくそれが正しい選択だ。リスクは低く、自分で復元率を有意に改善することはできず、データを壊滅的な損失と分類するほど気にかけていないからだ。

    バックアップの重要性を誰かが話すのを聞いても、友人や家族がこの日付に苦しむのを聞いたことがなければ、当然この警告を無視するだろう。

    それとも、バックアップ、運動、睡眠、栄養、会計、家のメンテナンス…などに関するベストプラクティスをみんな守っているのだろうか。

    私は守っていない。バックアップはそのリストの上位にはない。

    こういうことはほとんどの人にとってそれほど重要ではなく、それでいいのだ。

  7. crossroadsguy

    データサイズを制御しなければ、最終的にそれがあなたとバックアップの選択を支配し、やがて多くの回避可能な悲惨な結果につながる。どういうわけか、これはデータストレージとバックアップの計画で見落とされがちだ。

  8. bloomingeek

    「暗号化され、チャンクレベルの重複排除が行われ、GFSローテーションされ、ポイントインタイムでアーカイブされた、クラウドの3-2-1バックアップソリューション」が今の私の最新パスワードだ、カンマなしで。(誰にも言わないで!)

この日のほかの記事

2026-09-16