Time Machine用に大容量HDDを搭載できるのは自作hackintoshの大きなメリットです。そのTime MachineがBig SurになってAPFSに対応したようです。APFSになると色々メリットがあるので、現用のTime Machineも移行しました。
Table of Contents
Time MachineとAPFS
Time Machineによる自動バックアップ機能がOS標準なことは、macOSの大きなメリットだと思います。うっかり削除したり、書き換えてしまったファイルを、Time Machineに何度も救われてます。Macに安い大容量HDDを内蔵すれば、安価に高速にバックアップできます。お手軽なマシンでそれが可能なのが自作PCです。
そのTime Machineが、Big SurになってようやくAPFSに対応しました。今までのTime Machineは、古いHFS+ファイルシステムを使っていました。Time Machineでは、特定時間ごとの全ファイルのスナップショットをバックアップします。1回目は、全てのファイルをバックアップコピーしますが、2回目以降は、差分だけを記録します。でもTime Machineのドライブをファインダーで見ると、あたかも毎回の記録が全て揃っているように見えます。Time Machineが頑張ってそのように見せているのです。
この機能は、APFSで導入されたクローン機能と似ています。あるファイルをクローン機能で複写すると、物理的なデータは一つしかないけど、それを2個に見せてくれます。片方のコピーに変更が加わると、その変更分だけを記録します。おそらくは、Time MachineのコードがAPFSの開発にも役立っていたのではないかと思います。逆に、APFSに備わったクローン機能をTime Machineで使えば、よりシンプルに効率よく実現できるはずです。ファイルシステムの機能ならば色々な場面で動作チェックされますから、バグが減って、堅牢になって、さらには最適化が進んで高速化すると期待できます。でもAPFSが実用化されても、今までTime MachineはHFS+を使ってました。移行に手こずっていたのかもしれません。でもようやくBig Surで対応しました。
APFS対応の確認
Time MachineがAPFS対応したことの確認をしました。Time Machineは、今までのHFS+のバックアップファイルも、サポートします。でも、新しいバックアップディスクを作る場合は、APFSになるようです。まずは、500GBの2.5インチHDDを用意して、HFS+でフォーマットしました。先の記事で紹介したリムーバブルHDDラックに入れてあるので、オレンジ色のリムーバブルディスクに見えてます。
ファイダーにも、オレンジのアイコンで、New Diskという名前で見えてます。
diskutilコマンドでチェックすると、確かにHFS+になってます。全体が一つのHFSボリュームです。
/dev/disk8 (external, physical): #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *500.1 GB disk8 1: EFI EFI 209.7 MB disk8s1 2: Apple_HFS New Disk 499.8 GB disk8s2
この後、「システム環境設定」「Time Machine」から、「ディスクを選択」ボタンを押し、このドライブをTime Machine用に設定します。
ここで消去を選ぶと、Time Machine用のHDDとして再度フォーマットされます。HDDの名前は同じですが、アイコンがTime Machine用に変わりました。
diskutilコマンドで調べると、
/dev/disk8 (external, physical): #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *500.1 GB disk8 1: EFI EFI 209.7 MB disk8s1 2: Apple_APFS Container disk9 499.8 GB disk8s2 /dev/disk9 (synthesized): #: TYPE NAME SIZE IDENTIFIER 0: APFS Container Scheme - +499.8 GB disk9 Physical Store disk8s2 1: APFS Volume New Disk 692.2 KB disk9s2
となってます。論理的な入れ物であるコンテナができて、その中にAPFSボリュームができてます。ボリュームの名前は、HFS+のボリュームの名前のNew Diskを引き継いでいます。このように、HFS+からAPFSにフィルシステムが変更されました。この後は、今までと同じように、Time Machineを利用できます。なお、ディスクユーティリティで確認すると、APFS(大文字、小文字を区別)になっていました。
APFSの利点
APFS化されたことで、堅牢になって高速化される可能性はあります。利便性も上がります。APFSのボリュームになったので、サイズが柔軟に変更できます。一台のHDDを丸ごとTime Machineに割り当てる場合は、悩む必要はないのですが、パーティションに分けて、一つのパーティションをTime Machine用に使う場合は、サイズの決定が難しかったです。Time Machineには大容量のHDDを割り当てるので、パーティションを分けて、その一つをデータ置き場にしようとか、別の一つにはバックアップのmacOSを入れておこうなどと考えることが多いです。
HFS+のパーティションの場合、パーティションの大きさを、フォーマット時に決める必要があり、それ以降変更することがほとんど不可能でした。なので、運用してみるとサイズが足りなかったり、大きすぎたので勿体無かったりします。APFSボリュームならば、可変サイズなので必要に応じて記録領域が伸縮します。後から別のボリュームを追加することも可能です。
ボリュームを追加する
すでにTime Machine用に設定してしまったこのHDDに、新たにデータを書き込んでおくボリュームを追加してみます。HFS+だと実現できなかった手順です。ディスクユーティリティで、コンテナを選び、上の+ボタンを選択します。これでAPFSボリュームを追加できます。dataという名前のボリュームを追加しました。
ついでなので、macOSというボリュームも追加しておきます。その結果、
/dev/disk10 (synthesized): #: TYPE NAME SIZE IDENTIFIER 0: APFS Container Scheme - +499.8 GB disk10 Physical Store disk9s2 1: APFS Volume New Disk 84.8 GB disk10s2 2: APFS Volume data 999.4 KB disk10s1 3: APFS Volume macOS 991.2 KB disk10s3
こんな感じに3個のボリュームが出来上がりました。macOSには、本体macOSが壊れた時のために、Big Surをインストールしてみます。インストーラを立ち上げて、このボリュームを選択します。
これでBig Surもインストールできて、起動できるようになります。macOSがインストールされた後のコンテナを見ると、
/dev/disk10 (synthesized): #: TYPE NAME SIZE IDENTIFIER 0: APFS Container Scheme - +499.8 GB disk10 Physical Store disk0s2 1: APFS Volume data 1.1 MB disk10s1 2: APFS Volume New Disk 84.8 GB disk10s2 3: APFS Volume macOS - Data 20.4 GB disk10s3 4: APFS Volume macOS 14.9 GB disk10s5 5: APFS Volume Preboot 282.1 MB disk10s6 6: APFS Volume Recovery 655.5 MB disk10s7 7: APFS Volume VM 1.1 MB disk10s8
手動で作成した、New Disk, data, macOSの3個のボリュームに加えて、macOSインストーラが作成した、macOS – Data, Preboot, Recovery, VMのボリュームが作られています。
まとめ
Time MachineがAPFSに対応したことを確認しました。Time Machine用のディスクを新たに作ると、APFSになります。APFSになったおかげで、Time Machineのデータはそのまま残しつつ、後からボリュームを追加したり、macOSをインストールしたりできるようになりました。ということで、今使っているTime Machineドライブも消去して、APFSに移行することにしました。