はじめに(背景)
自宅のRaspberry Piに外付けSSDを接続し、OpenMediaVault(OMV)でTime Machineバックアップ環境を構築しました。OMVはNASサーバーを簡単に構築できるLinuxディストリビューションです。しかし1年ほど運用したところ、バックアップが「準備中」のまま進まなくなってしまいました。この問題を解決するため、様々な対策を試みました。
まず結論:現時点でのベストの対応
以下の対応で問題が解決しました:
1. 問題の特定
- スパースバンドル(sparsebundle)の破損が主要な原因と判明
- バックアップが「準備中」の状態で進まない
- 既存のスパースバンドルの修復が困難
2. 現在のベストな対応策
- 複数の外付けメディアをローリング方式で使用
- 問題発生時はデータを用いてTime Machineに入れるかを検証
- 検証後、新しいメディアでバックアップを新規に再開
やってダメだったこと
下記を実施しましたが、どれもダメでした。
1. Raspberry PiおよびOMVのアップデート:
-
sudo apt update
およびsudo apt full-upgrade
コマンドを用いてRaspberry PiとOMVのシステムを最新の状態に保つ試みを行いました。しかし、これにより一時的な改善は見られたような気がしたものの、根本的なバックアップ問題は解決しませんでした。
2. SAMBA設定の調整:
- Time Machine用のSMB設定(
fruit:time machine = yes
やvfs objects = catia fruit streams_xattr
)を再確認・再設定しましたが、これらの調整だけではバックアップの安定化には至りませんでした。
3. 各レイヤーでの修復試行:
- 物理ディスクレベル: S.M.A.R.T.情報の確認とディスクの健全性チェック
- ファイルシステムレベル:
fsck_apfs
コマンドによるAPFSファイルシステムの整合性チェックと修復 - スパースバンドルレベル:
hdiutil verify
コマンドによるイメージファイルの検証
これらの異なるレイヤーでの修復を試みましたが、いずれの方法でも問題を根本的に解決することはできませんでした。
4. 別のSSDでの検証:
- 外付けSSDの物理的な健康状態を確認するため、別のSSD(SanDisk PortableSSD 2TB)を使用し、既存のスパースバンドルファイルを複製して継続バックアップを試みましたが、スパースバンドルの複製では問題が解決せず、ゼロからの新規バックアップの方が安定して動作することが判明しました。
Time Machineバックアップの長期運用における問題点と今後の運用の方向性
スパースバンドルはTime Machineのバックアップ方式として非常に便利ですが、以下の理由により破損しやすい特徴があります:
1. バンドル構造の複雑さ
- 多数の小さなファイル(バンドル)で構成される複雑な構造
- 各バンドルファイルの整合性管理が必要
- 一つのバンドルの破損が全体に影響する可能性
2. ネットワーク転送時の脆弱性
- ネットワーク接続の不安定さによるデータ転送の中断
- 転送中の予期せぬ切断によるファイル破損
- 特にWi-Fi接続での信頼性の低さ
3. 長期使用による劣化
- メタデータの肥大化
- ファイルシステムの整合性低下
これらの要因が重なり、スパースバンドルの破損は比較的頻繁に発生し、一度破損すると修復が困難になります。今回もこれらの要因が複合的に作用してバックアップ失敗を引き起こしたと考えられます。
今回のケースでは物理メディアの問題にたどり着くまでに時間がかかりました。ネットワーク設定やSAMBAの調整、OSのアップデートなどの問題である可能性をつぶしていたからでもありますが、いちばん大きな理由は、バックアップデータは数百GBから数TBと大容量なため、1回の検証に時間がかかることです。原因を特定して解決するまでに、かなりの時間を無駄にしてしまいました。Time Machineバックアップを使う場合は、うまく動かなくなってきたら、早く諦めてバックアップメディアを交換し、複数のメディアをローテーションで使う、というシンプルな方法が実用的、との結論に至りました。
おわりに
Raspberry PiとOpenMediaVaultによるTime Machineバックアップでは、スパースバンドルの破損が最大の課題であることが分かりました。この問題に対しては、以下の対策が有効です:
- 複数の外付けSSDをローテーションで使用
- バックアップの不具合が出始めたら、早めに新しいメディアへ切り替え
- 定期的なバックアップの動作確認
この結論は、2013年頃からの10年以上にわたるTime Machineバックアップの運用経験から得られた知見です。この間、外付けHDDやNAS、Raspberry Piなど様々なプラットフォームでTime Machineバックアップ体制を構築し、その都度技術的な解決を試みてきましたが、テクニカルに問題解決を図るより、運用面での対処が現実的ではないかという判断に至りました。特に最近の1年8ヶ月は、OpenMediaVaultでの実装に焦点を当てて検証を重ねてきました。
Time Machineバックアップは「うまく動かなくなってきたら、早めに新しいメディアに切り替える」というシンプルな運用で十分そうです。技術的な解決にこだわりすぎて時間を無駄にするより、複数のSSDをローテーションで使う方が、実用的だと考えるようになりました。