Apple Silicon MacでmacOS Catalina以前のブータブルインストーラーを作る方法

Apple Silicon MacではmacOS Catalina以前のIntelベースmacOSのブータブルインストーラー(USBメモリなどの起動ディスク)をターミナルからcreateinstallmediaコマンドで作成しようしても「zsh : killed」とエラーが表示されてしまう。

このエラーはAppleのサポートサイトでも言及がないが、どうやらコード署名が原因のエラーのようで、基本的にApple Silicon Macでは通常の方法ではIntelベースのmacOSブータブルインストーラーを作成することは不可能となっている。

本記事ではターミナルからmacOSインストール.appのコード署名を置換してエラーを回避し、Apple Silicon MacでIntelベースのmacOSのブータブルインストーラーを作成する方法を紹介する。

なお、余談ではあるがHigh Sierra〜Venturaまでの各macOSはMDSというアプリを使えば簡単にダウンロード可能だ。

ちなみにMDSにはダウンロードだけではなくブータブルインストーラーを作成する機能もあるが、そちらもエラーとなるのでブータブルインストーラーの作成は本記事で紹介する方法しかない。

Apple Silicon MacでCatalina以前のブータブルインストーラーを作成する手順

本記事の手順を実行する前に、もし前述のMDSアプリでmacOSをダウンロードしたならインストール.appの名前からビルド番号を消しておこう(例えば「macOS Catalina 19H2インストール.app」なら「macOS Catalinaインストール.app」にリネームする)。

インストール.appは上記画像のような名前にしておく

1. Xcodeコマンドラインツールをインストール

本記事の手順を実行するにはまずXcodeコマンドラインツールが必要なので、まだインストールしていない場合は下記コマンドをターミナルで実行してXcodeコマンドラインツールをインストールする。

xcode-select --install

なお、上記画像では既にインストール済みなので「already installed」と表示されている。

2. macOSインストール.appのコード署名を置換する

続いてターミナルで下記コマンドを実行し、macOSのインストール.app(今回の場合はmacOS Catalinaインストール.app)のパッケージ内ファイルのコード署名を置換する。

なお、ここではmacOSインストール.appがアプリケーションフォルダにある場合を前提としている。

cd /Applications/Install\ macOS\ Catalina.app
find . -type f -exec codesign -s - -f "{}" \;

多数の処理が走るが時間はそれほどかからない。

3. macOSブータブルインストーラーが正常に作成されたら成功

置換処理が終わったらあとは通常の方法と同じように下記コマンドでブータブルインストーラーを作成しよう(Catalina及びMyVolumeの部分は適宜各macOSの名前やUSBメモリのボリューム名に置き換える)。

sudo /Applications/Install\ macOS\ Catalina.app/Contents/Resources/createinstallmedia --volume /Volumes/MyVolume

エラーが出ずに上記画像のように無事にブータブルインストーラーが指定のボリュームに作成されたら成功だ。

まとめ

以上、Apple Silicon MacでIntelベースのmacOSのブータブルインストーラーを作成する方法を紹介した。

僕はデベロッパではないのでコード署名に関して詳しくなく、本記事の解決法を見つけるまでに海外サイトを読み漁ったり試行錯誤が必要だったので、Appleには早急にサポートサイトの情報を更新するか、アップデートでApple Silicon Macでも通常の方法でIntelベースmacOSのブータブルインストーラーの作成ができるようにしてもらいたい。