目次
最初に
Apple Silicon Mac で仮想マシンを使うときといえば、GUI なら UTM や VMWare Fusion、VirtualBuddy, Parallels Desktop が有名です。CUI なら Multipass や OrbStack などがあげられるでしょう。どれも良いものですが、個人的には GUI のアプリケーションはターミナルから起動するのがやや面倒で、CUI のものは GUI のセットアップが面倒でした。
そこで、今回紹介するのが、Tart です。
cirruslabs/tart は Apple Silicon 上で macOS および Linux 仮想マシンを構築、実行、管理するための仮想化ツールセットです。Apple Virtualization Framework によって高速な仮想マシンを利用することができます。
Toolset to build, run and manage macOS and Linux VMsNative performance. Remote storage for Virtual Machines. Many integrations including GitHub, GitLab and more.Tartはcli から仮想マシンの管理を行いますが、仮想マシンを起動すると、GUI が立ち上がります。
調べてみましたが何も分かりませんでした!としてしまいそうなほどに情報がありませんでした。
Tart の存在を教えてくださった豆蔵デベロッパーサイト様に、ここで謝意を述べさせていただきます。 Tart で macOS / Linux の仮想マシンを使う | 豆蔵デベロッパーサイト
*Cirrus Runners では仮想化技術として Tart を用いて CI ランナーを提供していますが、今回は扱いません。
インストール
Homebrew からインストールできます。
brew install cirruslabs/cli/tart
インストールするときは、homebrew/core/tart ではなく、cirruslabs/cli/tart をインストールするようにしましょう。
homebrew-core のほうは 2024/08/14 現在、0.38.0 からアップデートされていません。最新バージョンは 2.17.0≤ となります。
仮想マシンを実行する
ほとんどQuick Start - Tart Virtualization に記載されている通りです。
公式イメージから
macOS
要件は macOS 13.0 以上となります。
Tart がインストール済みのマシンで、GitHub コンテナレジストリからプレーンな macOS Sequoia 15.1 beta2 の公式イメージを取得します。
tart clone ghcr.io/cirruslabs/macos-sequoia-vanilla:15.1-beta-2 sequoia
Vanilla だとサイズはおよそ 25GB 以内です。
イメージのダウンロードが終了すると、マシンの起動が可能になります。
list で確認できます。
$ tart list
Source Name Disk Size SizeOnDisk State
local sequoia 50 22 22 stopped
runでVMが実行できます。
tart run sequoia
実行すると新しいウィンドウが開き、仮想マシンの macOS が起動します。かなり起動が早いです。
取得可能な公式イメージはfull list of imageに掲載されています。
ざっくりとした特徴としては、以下の通りです。
macos-{sequoia, sonoma, …}-vanilla- プレーンな macOS イメージ
macos-{sequoia, sonoma, …}-base- homebrew がインストール済みの macOS イメージ
macos-{sequoia, sonoma, …}-xcode- 指定されたバージョンの Xcode と Fullter がインストールされた macOS イメージ
macos-runner- Xcode が最新バージョンまで 3 つとバージョン管理用の Xcodes ツールがインストールされた macOS イメージ
Linux Distro
tart clone ghcr.io/cirruslabs/ubuntu:latest ubuntu
デスクトップ環境がないので、早いです。 0.9GB だけ
tart run ubuntu
起動するとこんな感じ。

こちらも取得可能な公式イメージはfull list of imagesに掲載されています。
Ubuntu, Debian, Fedora があります。
ログインなど
公式イメージはすべて、
user : admin
passwd : admin
でログイン可能です。
SSH 接続
tart ip <name>
で、VM の IP アドレスを取得できます。
公式イメージは SSH 接続ができる状態ですので、
ssh admin@$(tart ip <name>)
で、接続可能です。
VM のカスタマイズ
あらかた導入ができたら、仮想マシンのカスタマイズを確認しておきましょう。
ストレージサイズは公式イメージはLinuxだと20GBなので、変更の必要性が高そうです。
tart get <name>
で現在の構成を確認することができ、
tart set <name> [ --option ]
で仮想マシンをカスタマイズすることができます。
設定項目は以下の通りです。
| Option | Description |
|---|---|
| cpu | CPU のコア数 |
| memory | メモリサイズ (メガバイト単位) |
| display | 表示解像度。1200x800 で示す |
| random-mac | 新しいランダム MAC アドレスを作成 |
| random-serial | 【macOS のみ】 新しいシリアル番号を生成する |
| disk | path のディスクを VM に接続する |
| disk-size | VM ディスクのサイズを指定したサイズ (GB) に変更 |
tart-cliの注釈
ディスクのサイズ変更は、ほとんどのクラウド対応 Linux ディストリビューションで使用でき、それ以外のディストロでもgrowpartやresize2fsを実行することで機能しますが、macOS の場合は回復パーティションを削除する必要があります。
詳細については、Tart のPackerプラグインのソースコードを参照してください。
tart set ubuntu --disk-size 50 --memory 16384
これで作成済みのUbuntuマシンのディスクサイズを50GBに、メモリを16384MBにすることができます。
ローカルで仮想マシンを構成する
Docker のような感覚で、用意されているOCI互換イメージを利用することもできるのですが、やはり、自分で一から作成したいときもあります。
ローカルのイメージから作成
【macOS】 IPSW ファイル
$ tart create --from-ipsw <location> <name>
これだけです。IPSWから直接OSが作成できるのはうれしいですね。VMWare FusionなんかはISOイメージを作成しないといけなかったので。 パスは、ローカルのファイルパスだけでなく、URL も対応していますので、公式サイトのダウンロードページから直接リンクを渡すことが可能です。
ちなみに、
tart create --from-ipsw=latest <name>
とした場合、対応する IPSW ファイルを自動的に取得してイメージを作成します。 この使い勝手はVirtualBuddyと似ているといえそうです。
インストール後のセットアップ
VM の初回起動後、macOS のインストールプロセスを手動で実行する必要があります。Managing Virtual Machine - Tart Virtualization によると、いくつかするべきことがあるらしいです。
- 自動ログインを有効にする。
Users & Groups -> Login Options -> Automatic login - SSH を許可する
Sharing -> Remote Login - ロック画面を無効にする。
Preferences -> Lock Screen -> disable "Require Password" after 5 - スクリーンセーバを無効にする
- ターミナルで
sudo visudoを実行し、%admin ALL=(ALL) ALLをadmin ALL=(ALL) NOPASSWD: ALLに変更し、パスワードなしで sudo を許可する。
【Linux】 ISO イメージ
Linux の場合は少し手順が変わります。
tart create --linux <name>
で、Linux VM を作成し
tart run --disk <path/to/os.iso> <name>
でインストールディスクをマウントした状態で起動すると、インストール画面が現れます。
そのあとは、必要に応じてVMのカスタマイズをしてください。
SSHの接続はできるようにしておきましょう。
まとめ
Tart は Apple Silicon Mac 上で高速な仮想マシン環境を提供します。公式サイトによると、GeekBench 5.5.0ではVirtualMacではホストの95%程度のスコアをたたき出しているそうです。
CUI での管理と GUI での操作を両立させた使いやすいツールとなっていますので、手軽にデスクトップ環境を使いたい場合は活用してみてください。