Blog Article
UTMでM1 MacにLinux仮想環境を構築する
VurtialBoxでCentOS 7を起動出来ない
VirtualBoxはオープンソースの仮想化ソフトウェアであり、異なるオペレーティングシステム (Windows、Linux、macOSなど) 上で仮想マシンを実行することができます。
Linuxの学習に取り組む際、VirtualBoxを使用して仮想環境をセットアップし、仮想マシンをインポートして起動しようとしましたが、エラーが発生しました。この問題に関する記録を共有します。
環境:
- Macbook Air
- Apple M1
- MacOS Sonoma 14.2.1
- ARM64アーキテクチャ
VirtualBox VMで仮想マシンを起動した際に、このようなエラーが表示されました。
このエラーメッセージは、macOS上で動作していたVirtualBox VMアプリケーションがクラッシュした際に表示されます。色々と調べると、VirtualBox自体は動作しますが、現在M1 Macでは仮想マシンがうまく動作しないようです。
M1 MacはARMベースのプロセッサを使用しており、Intel x86_64アーキテクチャ向けにビルドされた仮想マシンソフトウェアやゲストオペレーティングシステムが直接実行されない可能性があります。従って、Intel向けのVirtualBoxをそのまま使用することは出来ません。
代わりに、M1 Mac上で動作するARM版のVirtualBoxまたは他のARM対応の仮想化ソフトウェアを探すか、Rosetta 2を使用してx86_64アプリケーションを実行できる場合があります。ただし、性能や互換性の面で制約がある可能性があります。
CentOS 7の場合、ARM版が提供されていない場合、ARM対応の仮想化ソフトウェアでCentOS 7のARM版を利用するか、他の方法を検討することが必要です。
VurtialBoxの代わりにUTMを使う
UTM (Universal Type-C Management) は、仮想マシンを管理するアプリケーションでありVirtualBoxの代替として使用できます。具体的には、UTMを使用すると、iOSデバイス上で仮想マシンを作成し、その中で異なるオペレーティングシステムを実行できます。これにより、iOSデバイス上で複数の環境を使い分けたり、開発環境を構築したりすることができます。UTMは、iOSデバイスの性能に合わせて柔軟に仮想マシンを設定できるため、様々な用途に利用されています。
VirtualBoxとUTMの主な違いは、UTMがiOSデバイス上で直接動作する点です。これにより、iOSデバイスで携帯性が高まり、どこでも仮想マシンを実行できます。ただし、VirtualBoxは多くのプラットフォームで動作する汎用的な仮想化ソフトウェアです。
環境構築
- UTMをダウンロードする
- CentOSをダウンロードする
- UTMを開いて新規仮想マシン作成を選択
- エミュレートを選択
- Linuxを選択
- ダウンロードしたCentOSのISOのパスを選択
- アーキテクチャはARM64を選択
- 設定が完了するとこのような画面が表示されるので、再生ボタン「▶」を押す
- VMを起動すると以下の画面になるので、「Test this media & install CentOS 7」を選択する
- 言語選択
- 右下の青いボタンがアクティブになるまで待機
- インストール完了まで時間がかかるので、その間にROOTパスワードとユーザーアカウントを作成する
- インストール完了後は、ウィンドウを閉じる (isoイメージを取り除くため)
- 再度VMを起動し、CD/DVD項目で選択しているISOパスを削除する
- 再度VMを起動すると、先ほど作成したアカウントでログインできる
これで、CentOSの環境構築完了です。