Mac(Intel または M1)で仮想マシンを作る (multipass) : 一度に複数作成する場合

使用するMacには、最低限、メモリが8GB以上搭載されているものとします。また、仮想マシンを複数同時に起動したいケースでは、UTMやVirtaulBoxよりも、multipassの方が手間が少ないです。

Mac上でLinux仮想マシンを複数動かす

multipassは、コマンド1つで複数の仮想マシン(Ubuntu LTS)を制御することができます。VirtualBoxやUTMなどにはこうした機能がなく、コンテナを前提とした検証や開発などに向きます。Intel系Macでは、VirtualBoxにVagrantというツールを追加することで、似たようなことができました。現在はIntel系Macを購入することができないため、multipass のようなツールは助かります。

multipassのインストール

  1. multipassのWebサイトにアクセスします。https://multipass.run/

  2. 「Your tracker settings」が表示された場合は、「Accept all and visit site」 をクリックします。

  3. multipassのWebサイトが表示されます。

  4. 画面下に移動します。お使いの環境に合わせてOS名をクリックします。ここでは、macOSをクリックします。

  5. Download Multipass for MacOS をクリックします。

  6. ダウンロードを許可しますか?と表示されます。

  7. 許可をクリック。ダウンロードが開始されます。ダウンロードされたmultipassのファイルをクリックします。

  8. multipassのインストール画面が起動するので、「続ける」をクリックします。

  9. 「続ける」をクリックします。

  10. 「続ける」をクリックします。

  11. 「同意する」をクリックします。

  12. 「インストール」をクリックします。

  13. 警告が表示されるので、指紋またはパスワードを使って、許可します。

  14. インストールが完了します。「閉じる」をクリックします。

multipassによる仮想マシン(VM)の制御

Macのアプリでターミナルを起動します。Macのアプリケーションフォルダ内の、ユーティリティフォルダに、「ターミナル」アプリがあります。Dockにセットしておくと良いでしょう。

VMの作成

複数のVMを作成する場合

次のコマンドを実行します。

echo 0 1 | xargs -n1 -IN multipass launch -n testvmN

このコマンドでは、testvm0とtestvm1という2台の仮想マシンを起動することができます。

実行結果

Launched: testvm0 Launched: testvm1

1つのVMを作成する場合

次のコマンドを実行します。

multipass launch --name myvm

このコマンドでは、myvm という1つの仮想マシンを起動することができます。

実行結果

稼働中のVMを確認

次のコマンドを実行します。

実行結果 (IPアドレス等は仮想マシンの起動毎に変わることがあります。)

複数VMへの同時コマンド実行

タイムゾーンを日本時間に変える操作を例とします。--bach -c の後に、' ' 実行したいコマンドをシングルクォーテーションで囲います。

タイムゾーンの確認

実行結果

特定のVMのみでコマンド実行

稼働中のVMのうち、特定のVMに対してコマンドを実行したい場合は、次のようになります。2つのVMが稼働しているので、testvm1 に対して、ip a を行わせます。

実行結果 ( testvm1に、192.168.64.13 のIPアドレスが割り当てられている場合 )

特定のVMのShellに接続する場合

指定したVMの中に入って、直接コマンド等で操作したい場合は、次のコマンドを使用します。testvm0 に接続してみましょう。

実行結果

接続中のVMのshellから離脱しMacに戻る方法

次のコマンドを実行します。

VMの削除

VMの削除には、次のコマンドを実行します。

指定のVMのみを削除する場合

例えば、testvm1 を削除する場合は、次のコマンドを実行します。

削除確認

実行結果

指定したVMが削除されたことを確認できました。

複数のVMをまとめて削除する場合

例として、testvm0 と testvm1 の2つのVMをまとめて削除する場合は、次のコマンドを実行します。

VMの確認

実行結果

削除後に同名のVMを作成する場合にやっておくこと

Stateが、Deleted の場合の状態では、同名のVMを作成することができません。同名のVMを作成する場合は、purge コマンドの実行が必要です。

VMの確認

実行結果

No instances found. となり、VMが全くない状態になりました。purge 実行後であれば、削除したVMと同名のVMを作成することができます。

multipassで起動するVMのスペック

標準のVMスペック

必要なメモリ等を全く指定しない場合は、CPU コア x1 , メモリ 1G, ディスク 5G , Ubuntu LTS のVMが起動します。VMのOSは、Ubuntu LTS に固定です。

メモリ等を指定してVMを作成する場合

用途に応じてVMのスペックを指定する場合は、例えば、myvm という仮想マシン名で、CPU コア x2 , メモリ 2GB , ディスク 20G の場合は次のようになります。