M1 Macでmultipassを使ってUbuntuを実行
multipassとは
multipassを使うと、Ubuntuを仮想マシン上で実行できます。そもそも、multipassの開発元は、Ubuntuを開発しているCanonicalです。
安定してUbuntuを動かせそうな気がするのと、M1 Macに対応したというニュースを見たので試してみました。
multipassのインストール
multipassをインストースルするには、Homebrewを使えます。
% brew install --cask multipass
利用できる仮想マシンのイメージを見る
以下のコマンドで確認できます。
% multipass find
Image Aliases Version Description
18.04 bionic 20211109 Ubuntu 18.04 LTS
20.04 focal,lts 20211108 Ubuntu 20.04 LTS
21.04 hirsute 20211110 Ubuntu 21.04
21.10 impish 20211103 Ubuntu 21.10
anbox-cloud-appliance latest Anbox Cloud Appliance
minikube latest minikube is local Kubernetes
LTSのUbuntuを起動
コマンド launch
でUbuntu LTSの仮想マシンを作成します。Ubuntuのイメージをダウンロードするので時間がかかります。
% ubuntuの名前のイメージを作成
% multipass launch --name ubuntu
なお、この時、メモリやコア数を指定できます。(詳しくは multipass help launch
で確認できます。)
% multipass launch --name (名前) \
--cpus (割当CPUコア数) \
--mem 割当メモリ(デフォルトは5G) \
--disk 割当ディスクサイズ
コマンド list
で作成されたマシンイメージを確認できます。
% multipass list
Name State IPv4 Image
ubuntu Running 192.168.64.4 Ubuntu 20.04 LTS
インスタンスにログインするには、shell
コマンドを使います。
% multipass shell ubuntu
その後は、普通にUbuntuです。
インスタンスにコマンドを実行
multipassの特徴ですが、実行中のインスタンスに対して、任意のコマンドが実行できることです。コマンドの結果も得られます。
% multipass exec イメージ名 コマンド
例えば、macOSのターミナルから、Ubuntuに対してコマンド(echo)を実行するには以下のようにします。
% multipass exec ubuntu echo "Hello"
Hello
インスタンスの操作
以下のコマンドでインスタンスを操作できます。
コマンド | 説明 |
---|---|
start | インスタンスの開始 |
stop | インスタンスの停止 |
suspend | インスタンスのサスペンド |
restart | サスペンドしたイメージを再開 |
delete | イメージを削除 |
purge | deleteしたインスタンスを完全に削除 |
インスタンスを削除するには delete
でインスタンスを削除候補にしておいて、purge
で完全に削除します。
ファイルをインスタンスに転送
インスタンスに対してファイルを転送するにはtransfer
コマンドを使います。
% multipass transfer (ファイル1) (イメージ):/path/to/file
ローカルPCのフォルダをインスタンスにマウント
ローカルのフォルダをインスタンスにマウントするにはmount
コマンドを使います。
% multipass mount (ローカルパス) (インスタンス):/path/to/dir
Ubuntuデスクトップの起動
デスクトップを使うには、以下のページが参考になりました。
- Ubuntu MATEを使う方法
- Graphical desktop in Multipass --- 上記と同じくRDPサーバを使うがubuntu-desktopを使う方法
(2021/11/16) なお、本記事の続編でUbuntuデスクトップを使う方法を書いてみました。
感想
軽く使ってみた感じ、Vagrantと似た感じで使えそうです。Dockerは、以下で試す方法を紹介しています。便利そうです。
Discussion
期待しています!
デスクトップを使う方法、書いてみました!参考まで!