macOS を VMware 仮想マシン化(その3)

稼働中の macOS を VMware の仮想マシン化する方法について書いた。

上記方法では一時的に新規 macOS をインストールする必要があった。結局使わない新規 macOS をインストールするのは無駄だ。そこで、新規 macOS をインストールせずに、現在稼働中の macOS を VMware の仮想マシン化する方法を考案したのでメモしておく。

環境:macOS Catalina Version 10.15.6(英語環境)、VMware Fusion 12.0.0、Carbon Copy Cloner 5.1.22

(1)Carbon Copy Cloner で macOS のバックアップを取る。

Mac Backup Software | Carbon Copy Cloner | Bombich Software
https://bombich.com/

SOURCE(バックアップ元。現在稼働中の macOS のボリューム)の選択は以下の2種類があるが、{ボリューム名} の方を指定する(Carbon Copy Cloner は {ボリューム名} - Data も一緒にバックアップしてくれるらしい)。

{ボリューム名}
{ボリューム名} - Data

DESTINATION(バックアップ先)はアイコンをクリックして「New disk image...」をクリックする。「Image Format」は「Read-only compressed disk image」を選択する(イメージファイルとしてバックアップするのがポイント。フォルダーへのバックアップだとあとで復元がうまくいかない)。「Encryption」は「No encryption」で良い。

適当なファイル名を付けて適当な場所に指定する。

クローンを実行。「起動ディスクとして使えないが良いか」などと表示されるが、構わず実行する。

(2)VMware Fusion に新規 macOS を作成する。念のため OS のバージョンは1でバックアップした macOS と同じにしておく(今回は Catalina)。

参考:

(3)仮想マシンを起動する前に、「仮想マシンの設定画面>Removable Devices>Hard Disk (SATA)」で、1のイメージファイルのファイルサイズの約2倍にディスクサイズを設定する(後述)。

(4)仮想マシンを起動する。

(5)言語を選択したあと、macOS Utilites に到達する。ここで Disk Utility を起動する。

(6)「Internal>Mackintosh HD」を選択した上で「Partition」をクリック。

円グラフで「Free space」部分を選択。「-」ボタンで削除。

「+」ボタンで新たな Untitled というパーティションができるので、Partition Infomation に以下のように設定する。

・Name:{適当に命名}
・Format:APFS
・Size:1のイメージファイルのファイルサイズの約2倍ほど

「Apply」をクリック。確認画面が出るので「Partition」をクリックして実行。

Operation failed... と表示されてエラーが出るが、「Done」で完了する。

Disk Utility を終了する。

(7)1のイメージファイルを外付け HDD 等に入れる。

(8)7の外付け HDD を仮想マシンに接続する。

(9)「Utilities>Terminal」で Terminal を起動する。

(10)以下のコマンドでディスク一覧を確認する。

# df -h

6で作成したパーティション、および7のイメージファイルのパスを確認する。

(11)以下のコマンドでイメージファイルからの macOS の復元を行う。

# asr restore --source {7のイメージファイルへのパス} --target {6で新規に作成したパーティションへのパス} --erase --noverify

3や6で、1のイメージファイルの2倍程度の容量を設定するようにと書いた。そうしていないと、このコマンドの実行時にディスク容量が足りないと表示され、復元ができない(おそらく1で圧縮バックアップにしていたからだろう)。2倍に設定したからといって最終的にできあがる仮想マシンのファイルサイズがその容量になるわけではなく、VMware では実際に使用される容量に可変する(僕の場合1のイメージサイズの 1.7 倍程度になった)。だから2倍ではなく、10 倍にしてしまってもいい。なお、仮想マシンの設定画面で「Removable Devices>Hard Disk (SATA)>Advanced options>Pre-allocate disk space」にチェックを入れておいた場合、実際の仮想マシンのファイルサイズも3で設定したサイズになってしまう。

(12)再度ボリュームを確認すると、7のイメージファイル名のボリュームができているはずだ。

# df -h

(13)以下のコマンドで、復元された macOS を起動ディスクに設定する。

# bless -mount /Volumes/{7のイメージファイル名} -setBoot

(14)再起動する。

# reboot

これで仮想マシン化が完了だ。

この方法は前回の方法と違って一時的な macOS のインストールが不要となる。よりスマートなやり方だと思う。

起動後は Install macOS Catalina と Mackintosh HD のボリュームが残り続けてしまう。前回も、一時的に新規インストールした OS のボリュームを削除したらどうなるんだろうと書いた。実際にやってみると、Disk Utility を使ってフォーマットできたし、その後も問題なく仮想マシンが起動した。

参考:
OSX: Setting the startup disk using Terminal
http://www.robertopasini.com/index.php?id=556

How to Change the Mac Startup Disk From the Command Line
https://www.techwalla.com/articles/how-to-change-the-mac-startup-disk-from-the-command-line

【Bash】「bless」 - 起動用ディスクを設定する - renoji.com
https://renoji.com/IT.php?Contents=ShellScript_Bash/Cmd_bless.html

macOS 10.15 Catalina にアップグレートしたら、ディスクユーティリティ上に「Macintosh HD - Data」という新しいボリュームが作成された | Too クリエイターズFAQ | 株式会社Too
https://www.too.com/support/faq/mac/finder_os/24140.html

CCCとmacOS Catalinaについてのよくある質問 | Carbon Copy Cloner | Bombich Software
https://bombich.com/ja/kb/ccc6/frequently-asked-questions-about-ccc-and-macos-catalina


この記事が気に入ったらサポートをしてみませんか?