Mac(Intel または M1)で仮想マシンを作る (multipass) : 一度に複数作成する場合
- 1 Mac上でLinux仮想マシンを複数動かす
- 2 multipassのインストール
- 3 multipassによる仮想マシン(VM)の制御
- 3.1 VMの作成
- 3.1.1 複数のVMを作成する場合
- 3.1.2 1つのVMを作成する場合
- 3.2 稼働中のVMを確認
- 3.3 複数VMへの同時コマンド実行
- 3.4 特定のVMのみでコマンド実行
- 3.5 特定のVMのShellに接続する場合
- 3.6 VMの削除
- 3.6.1 指定のVMのみを削除する場合
- 3.6.2 複数のVMをまとめて削除する場合
- 3.6.3 削除後に同名のVMを作成する場合にやっておくこと
- 3.1 VMの作成
- 4 multipassで起動するVMのスペック
- 4.1 標準のVMスペック
- 4.2 メモリ等を指定してVMを作成する場合
使用するMacには、最低限、メモリが8GB以上搭載されているものとします。また、仮想マシンを複数同時に起動したいケースでは、UTMやVirtaulBoxよりも、multipassの方が手間が少ないです。
Mac上でLinux仮想マシンを複数動かす
multipassは、コマンド1つで複数の仮想マシン(Ubuntu LTS)を制御することができます。VirtualBoxやUTMなどにはこうした機能がなく、コンテナを前提とした検証や開発などに向きます。Intel系Macでは、VirtualBoxにVagrantというツールを追加することで、似たようなことができました。現在はIntel系Macを購入することができないため、multipass のようなツールは助かります。
multipassのインストール
multipassのWebサイトにアクセスします。https://multipass.run/
「Your tracker settings」が表示された場合は、「Accept all and visit site」 をクリックします。
multipassのWebサイトが表示されます。
画面下に移動します。お使いの環境に合わせてOS名をクリックします。ここでは、macOSをクリックします。
Download Multipass for MacOS をクリックします。
ダウンロードを許可しますか?と表示されます。
許可をクリック。ダウンロードが開始されます。ダウンロードされたmultipassのファイルをクリックします。
multipassのインストール画面が起動するので、「続ける」をクリックします。
「続ける」をクリックします。
「続ける」をクリックします。
「同意する」をクリックします。
「インストール」をクリックします。
警告が表示されるので、指紋またはパスワードを使って、許可します。
インストールが完了します。「閉じる」をクリックします。
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 の場合は次のようになります。