はじめに
この記事は、Apple Developer Forumsのスレッド"Can you remove Rosetta 2 on Apple Silicon?"のkyrsquirさんの投稿について、実際に検証したという記事になります。
Rosetta 2を駆逐する手順
0. アクティビティモニタでIntelプロセスが動いていることを確認
Rosetta 2がインストールされていれば、起動直後にはCarbonComponentScannerXPC
というプロセスが存在しているはずです。一連の作業の後、このプロセスが消えればOKです。
1. Rosetta 2に関係するファイルの洗い出し
以下のコマンドで、com.apple.pkg.RosettaUpdateAuto
に関連するファイル・ディレクトリ・LaunchAgentを洗い出します。
% pkgutil --files com.apple.pkg.RosettaUpdateAuto
Library
Library/Apple
Library/Apple/usr
Library/Apple/usr/lib
Library/Apple/usr/lib/libRosettaAot.dylib
Library/Apple/usr/libexec
Library/Apple/usr/libexec/oah
Library/Apple/usr/libexec/oah/debugserver
Library/Apple/usr/libexec/oah/libRosettaRuntime
Library/Apple/usr/libexec/oah/runtime
Library/Apple/usr/libexec/oah/translate_tool
Library/Apple/usr/share
Library/Apple/usr/share/rosetta
Library/Apple/usr/share/rosetta/rosetta
洗い出したものはリダイレクトなりでtxtに落として保存しましょう。
2. Recoveryモード (macOS復旧) で起動
Macの電源を落とします。Powerボタンを押しっぱなしにし、オプションを表示させて「macOS復旧」に入ります。(詳細)
ステータスバーの「Utilities」(ユーティリティ)から、ターミナルを起動します。
3. System Integrity Protection (SIP)の無効化
以下のコマンドを実行し、SIPを無効化します。y/N
が聞かれるのでy
でconfirm、パスワードを入力。
# csrutil disable
「再起動後にSIPが無効化される」という旨が表示されます。
なお、SIPは「システム整合性保護」の機構で、以下のような機能を提供します。無効化することはリスクを伴う行為であることは承知しましょう。(ソース: Mac のシステム整合性保護について)
Mac 上の保護されたファイルやフォルダを改ざんしようとする悪質なソフトウェアからデータを守ります。システム整合性保護では、ルートユーザアカウントに制約を課し、Mac オペレーティングシステムの保護されている部分に対してルートユーザが実行できる操作を制限します。
4. 再起動後、1.で記録しておいたファイルを削除
通常のブートオプションで再起動・ログインします。ターミナルを開き、記録しおいたファイルを削除していきます。以下のコマンドはディレクトリごと消しているため、そのまま実行すると、余計なものまで消されるかもしれません。確認しつつ削除していきましょう。
% sudo rm /Library/Apple/usr/lib/libRosettaAot.dylib
% sudo rm -rf /Library/Apple/usr/libexec
% sudo rm -rf /Library/Apple/usr/share/rosetta
5. Recoveryモード (macOS復旧) で起動
再び再起動、macOS復旧に入り、ステータスバーの「Utilities」(ユーティリティ)からターミナルを起動します。
6. SIPの有効化
以下のコマンドを実行し、SIPを有効化します。y/N
が聞かれるのでy
でconfirm、パスワードを入力。
# csrutil enable
7. 再起動してRosetta 2のプロセスが死んだことを確認
通常のブートオプションで再起動・ログインし、アクティビティモニタでCarbonComponentScannerXPC
が消えたことを確認します。Kindでソートして、Appleのプロセスのみとなったことを確認します。スッキリ!
さいごに
Apple M1 Chipを搭載したMacbookを最近職場で導入し、せっかくなのでと絶対にRosetta 2を入れない縛りプレイをしていました。DropboxもとうとうApple Siliconに対応したということで、私の使用方法的には、特にもう困ることはないなと思っていました1。が、気づかぬうちにRosetta 2を入れてしまうソフトウェアがあって、今回の記事を書くに至りました。
-
Intel特有のソフトウェアは意外とリモートログイン先のLinuxでどうとでもなっているという特殊環境でもあります。 ↩