2016-09-02

復旧パーティションをバックアップ

OS X 復元機能」を提供する復元システムは、Finderでは表示されない復旧パーティション(Recovery HD)に格納されている。この領域はTime Machineではバックアップされない(と、思い込んでいたが、最近はバックアップされる? というかリストア用の復旧パーティションデータを保持しているようだ)。

OS Xを再インストールすると自動的に作成されるので、普通の使い方をしているユーザーはバックアップの必要性を感じることもないだろう。 しかし、細かいことが気になるフツーじゃない人は、このリカバリー領域をバックアップしたくなる(特に出荷時状態)。

アップルが配布しているユーティリティー「OS X 復元ディスクアシスタント」を使うと、復旧パーティションと全く同じものをUSBドライブに作成することができる(内蔵ディスクのRecovery HDがコピーされる)。

このソフトは、OS再インストール用のメディアが付属しなくなったMac OS X Lionを搭載したMacのために用意されたもので、もともとはLion 復元ディスクアシスタントと呼ばれていた。 このためウインドウの背景イメージが男前のライオンのままだったりする。 古いソフトウェアだが、OS X El Capitan 10.11.6でも使用可能である。

アップル純正品以外に、復旧パーティションをバックアップ/リストア可能なサードパーティー製アプリケーションも存在するようだ。

復元ディスクアシスタントはバックアップの作成先として、USB接続のドライブしか選べない(内蔵SDXCドライブやFireWireも使えない)のが不便だし、サードパーティー製品をインストールするのも面倒なので、私はターミナルからコマンドを使ってディスクイメージにバックアップする方法をとっている。

というわけで、あまり普通ではない使い方をしているユーザーによる、復旧パーティションをバックアップ/リストアする方法メモ。

Mac内蔵ディスクの構成が次のようになっているとする。

$ diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *251.0 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:          Apple_CoreStorage Macbook Pro HD          250.1 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3
   # 〜仮想ボリュームの表示部分は省略〜

ディスクイメージにバックアップする手順は次の通り(この例では、バックアップしたい復旧パーティション: disk0s3、イメージファイル名: recovery-hd.dmgと仮定する)。

# cd イメージファイルを保存したいディレクトリー
# diskutil unmount disk0s3  # 通常マウントされていないので必要ない
# dd if=/dev/disk0s3 of=recovery-hd.dmg

出来上がったイメージファイル recovery-hd.dmg を起動可能なUSBドライブなどにコピーしておき、そのドライブからMacを起動してリストアする。

ディスクイメージをリストアする手順は次の通り(この例では、リストアしたい復旧パーティション: disk0s3、イメージファイル名: recovery-hd.dmgと仮定する)。

# cd イメージファイルの保存されているディレクトリー
# diskutil unmount disk0s3
# dd if=recovery-hd.dmg of=/dev/disk0s3
# asr adjust --target /dev/disk0s3 --settype "Apple_Boot"

起動可能なUSBドライブの作り方については、別記事「起動可能なSDカードを作成する」を参照。

バックアップから復元するのではなく、復旧パーティションを再作成したい場合は「復旧パーティションを再構築」を参照。

2 件のコメント:

  1. 恐れ入ります
    このバックアップ方法だと、recovery-HD がAPFS上にある場合、プライバシー環境設定でターミナルアプリにフルディスクアクセス権を与えても「command not permitted」と返って来て先に進めません。Catalina 以降はどうしたら良いでしょう?

    返信削除
    返信
    1. APFSから起動するような新しいシステムでは、この手順は意味がないですね。この記事でいうところの recovery-hd.dmg に相当するものは、わざわざ作成するまでもなくAPFSコンテナ内のボリュームに含まれています。ただし、起動方式が違うので同じようには使えません。

      削除