🚀

M1 Mac上にUTMで仮想環境をセットアップをする手順

2023/05/12に公開

備忘録として書きます。

環境

Host machine: M1 MacBook Pro(arm64)
Host OS: Monterey v12.6.5

utmのインストールとUbuntu Setup

https://oopsoop.com/ubuntu-on-mac-using-utm/
あらかたは上記の通りにやっていく。
ただし自分の場合、arm64上で作業するとpreview版など不安定になるものがあるで変更点がいくつかある。

変更点:
バーチャルマシンの作成編

  • Step2:Emulate
  • Step4:Ubuntu for amd64
  • Step5:お好みで(後から変更可能)
  • Step6:お好みで(後から変更可能)
VMware: UTM
VM OS: Ubuntu v22.04.2 LTS(amd64)
VM Network setting: shared network

SSHのセットアップ

  1. リモートマシンのipアドレスを確認。
リモートマシン
ip addr
  1. ターミナルから入る。
ローカルマシン
ssh ここにipアドレスを入れる。
  1. 大丈夫そうなので、秘密鍵/公開鍵認証の生成。
ローカルマシン
ssh-keygen -t rsa -f /Users/hiro/.ssh/private_key_ubuntu_amd64
  1. リモートマシンへのコピー。
ローカルマシン
ssh-copy-id -i .ssh/private_key_ubuntu_amd64.pub ipアドレス
  1. 秘密鍵/公開鍵方式でssh接続できることを確認。
ローカルマシン
ssh -i .ssh/private_key_ubuntu_amd64 ubuntu-amd64
  1. ホスト名でアクセスできるようにする。
/Users/hiro/.ssh/config
Host ubuntu-amd64
    HostName *****
    User hiro
    //使用する秘密鍵ファイルの指定
    IdentityFile /Users/hiro/.ssh/private_key_ubuntu_amd64
    //他の秘密鍵ファイルを試みない
    IdentitiesOnly  yes

Shared Directoryのセットアップ

  1. 共有したいファイルを作成。
  2. utmでVMの設定からsharing設定で共有するファイルのパスを指定。
  3. リモートマシンにマウントポイントを作成し、マウントをする。
    今回はVirtFSを使用する。
リモートマシン
sudo mount -t 9p -o trans=virtio share /home/hiro/UbuntuShareAmd64 -oversion=9p2000.L
  1. パーミッションの設定をする。
リモートマシン
sudo chown -R hiro /home/hiro/UbuntuShareAmd64
  1. 自動マウントを設定する。
    起動するたびに自動マウントがされるように設定する。
/etc/fstab
share /home/hiro/UbuntuShareAmd64 9p trans=virtio,version=9p2000.L,rw,_netdev,nofail 0 0

Vscodeのセットアップ

Vscode: v1.78.0

以下の拡張機能をインストール

  • Remote Development

あとは拡張機能を使ってリモートマシンにログインできるか確かめてみる。

Additional Options

https://blog.mothule.com/tools/ssh/tools-ssh-ssh-agent-usage

参考

https://docs.getutm.app/

Discussion