思い返せば、1年ちょっと前にIntel MacからM1 Macに機種変したときに(言い方あってる?)、それまで使っていたVirtualBoxが動かなくなったのが終わりの始まりだったのです。もう仮想化ソフトを使ってMacにLinuxをインストールしてニヤニヤすることはできないのだ。そう自分に言い聞かせながら、別れの酒をひたすら呑み続けたのでした。
と思ってたら、いろいろあるんですね、仮想化ソフトって。Parallels Desktop とか VMware Fusion とか。てなわけで、今回は無料で使える仮想化ソフト UTM でM1 MacにUbuntu 22.04 LTSをインストールしていきます。
UTM 4.0 にインストールした記事もありまーす。
- Mac mini (M1, 2020)
- macOS Monterey
- UTM 3.1.5
- Ubuntu Server 22.04 LTS for ARM
UTMのインストール
まず、UTMの公式サイトに行って、トップページの[Download]ボタンをクリックしてダウンロードします。右にある[Mac App Store]は罠です。こっちをクリックするとApp Storeが開いて1,220円で買わされる(言い方)ことになります。まずは無料で使わせていただいて、気に入ったら買いましょう。(本当だな?)
ダウンロードした UTM.dmg
を開くと、お馴染みのアレが表示されるので、UTMのアプリアイコンをApplicationsフォルダにドラッグ&ドロップしてインストールします。シンプルなのはいいけど、何の説明もなくこれでインストール方法が伝わるんですかね。初めて見た人はわからないよね。ってそんな人はUTM使わないか。
バーチャルマシンの作成
UTMを起動すると次のようなウインドウが表示されるので「Create a New Virtual Machine」をクリックします。
次の画面では「Virtualize」をクリックします。今回はM1プロセッサ(ARMアーキテクチャ)のMacにARM版Ubuntuをインストールなので。
Virtualize
faster, but can only run the native CPU architecture.
より高速ですが、ネイティブなCPUアーキテクチャしか動かせません。
Emulate
slower, but can run other CPU architectures.
より低速ですが、他のCPUアーキテクチャを動かすことができます。
これからインストールするOSの種類を選択します。もちろんLinuxです。
- 「Use Apple Virtualization」のチェックは入れません。
- 「Boot from kernel image」のチェックも入れません。
- 「Download Ubuntu Server for ARM」のリンク先でUbuntuのインストールディスク(ISOイメージ)を手に入れてください。
- 「Browse」をクリックして、先ほどダウンロードしたISOイメージを選択してください。
Use Apple Virtualization
Apple virtualization is experimental and only for advanced use cases. Leave unchecked to use QEMU, which is recommended.
Appleの仮想化は実験的なものであり、高度なユースケースにのみ使用されます。QEMUを使用する場合は、チェックを外しておくことをお勧めします。
Boot from kernel image
If set, boot directly from a raw kernel image and initrd. Otherwise, boot from a supported ISO.
設定された場合、生のカーネルイメージとinitrdから直接起動します。そうでなければ、サポートされている ISO からブートします。
バーチャルマシンに割り当てるメモリとCPUを設定します。多すぎても少なすぎてもよくないです。とりあえずホストとゲストで半分ずつ分け合う感じで、メモリ4GB、CPU4コアにしてみました。あとで変更できるので悩まなくて大丈夫です。
Enable hardware OpenGL acceleration (experimental)
ハードウェアOpenGLアクセラレーションを有効にする(実験的)
ストレージのサイズを決めます。こういうとき、2のべき乗(2進数で切りのいい数字)を使うとプロ感を演出することができます。20GBとかにしたら「エエーッ、まだ10進数なんて使ってんの!?ダッサ〜い!」と言われてしまいますよ(誰に)。
Specify the size of the drive where data will be stored into.
データを格納するドライブのサイズを指定します。
ホストとゲストで共有するディレクトリの設定です。あとで設定できるので、今はしなくていいや(先送り主義)。
Optionally select a directory to make accessible inside the VM. Note that support for shared directories varies by the guest operating system and may require additional guest drivers to be installed. See UTM support pages for more details.
オプションで、VM内部でアクセスできるようにするディレクトリを選択します。共有ディレクトリのサポートはゲストオペレーティングシステムによって異なり、追加のゲストドライバのインストールが必要になる場合があることに注意してください。詳細については、UTM サポートページを参照してください。
最後に、このバーチャルマシンに名前を付けて[Save]をクリックします。
Ubuntuのインストール
「Try or Install Ubuntu Server」を選択して、enterします。
言語を選択します。日本語もタガログ語もないので英語にしましょうか。
キーボードの設定です。LayoutはJapanese、VariantはJapanese(Macintosh)を選択しました。つーか、今はMacintoshじゃなくてMacが正式名称なんだよな。
次に、日本語キーボードと英語キーボードを切り替えるショートカットの設定です。お好みで選んでくだちい。
You will need a way to toggle the keyboard between the national layout and the standard Latin layout.
キーボードをナショナルレイアウトと標準ラテン語レイアウトの間で切り替える方法が必要です。
Right Alt or Caps Lock keys are often chosen for ergonomic reasons (in the latter case, use the combination Shift+Caps Lock for nomal Caps toggle). Alt+Shift is also a popular combination; it will however lose its usual behavior in Emacs and other programs that use it for specific needs.
人間工学的な理由から、右 Alt または Caps Lock キーがよく選ばれます (後者の場合、通常の Caps トグルには Shift+Caps Lock のコンビネーションを使用します)。Alt+Shiftもよく使われる組み合わせですが、Emacsや特定の用途で使うプログラムでは、通常の動作が失われます。
Not all listed keys are present on all keyboards.
リストにあるすべてのキーがすべてのキーボードにあるわけではありません。
「Ubuntu Server」を選択して[ Done ]します。
Ubuntu Server
The default install contains a curated set of packages that provide a comfortable experience for operating your serever.
デフォルトのインストールには、あなたのサーバーを快適に操作するための厳選されたパッケージが含まれています。
Ubuntu Server (minimized)
This version has been customized to have a small runtime footprint in environments where humans are not expected to log in.
このバージョンは、人間がログインすることを想定していない環境において、実行時のフットプリントが小さくなるようにカスタマイズされています。
ネットワークの設定は、そのままでOK。
Configure at least one interface this server can use to talk to othes machines. and which preferably provides sufficient access for updates.
このサーバーが他のマシンと通信するために使用できるインターフェイスを少なくとも1つ設定し、更新のための十分なアクセスを提供することが望ましい。
プロクシの設定。そのままenterです。
Ubuntuのパッケージをダウンロードするときのミラーサイトの設定です。日本のミラーサイトが設定されているので、そのままでOKです。
ストレージのパーティションの設定です。今回は開発環境なのでパーティションを切りません。そのまま[ Done ]です。ドーン。←
本番環境を構築する場合は、しっかりパーティションを分割しましょう。データの増減が頻繁にあるディレクトリ、例えばログファイルが入る /var
やユーザのホームディレクトリ /home
は、システムがインストールされているディレクトリとは分けておくことをおすすめします。
ストレージの設定の概要がずらっと表示されます。問題なければ[ Done ]します。
確認が表示されるので[ Continue ]します。
Selecting Continue below will begin the installation process and result in the loss of data on the disks selected to be formatted.
下の「続ける」を選択すると、インストール処理が開始され、フォーマットするディスクのデータが失われます。
You will not be able to retur to this or a previous screen once the installation has started.
インストールが開始されると、この画面または前の画面に戻ることはできません。
Are you sure you want to continue?
本当に続けますか?
ユーザを作成します。偽名を登録しても怒られません。サーバ名は何でもOKです。ユーザ名とパスワードはこのUbuntuにログインするためのものです。このユーザ名、パスワードだけはちゃんと設定してください。
SSHの設定です。SSHを使いたいので「Install OpenSSH server」にチェックを入れて[ Done ]します。
You can choose to install the OpenSSH server package to enable secure remote access to your server.
サーバーへの安全なリモートアクセスを可能にするために、OpenSSHサーバーパッケージをインストールすることを選択することができます。
おすすめのパッケージ的なものが表示されます。「全部インストールしたいんですけどね、エヘヘ」と愛想笑いしながら何も選択せずに[Done]しました。
インストールが始まります。しばし待ちましょう。下に表示されている[ Cancel update and reboot ] が [ Reboot Now ]に変わったらインストール完了です。でも[ Reboot Now ]は押しません(なぬ!?)。
インストールディスクを挿入したまま再起動しようとしても起動できないので、ウインドウの閉じるボタン(赤丸)をクリックしてください。これでバーチャルマシンの電源を切ったことになります。
ウインドウの下のほうにある「CD/DVD」で「Clear」を選択してインストールディスクを取り出します。
ウィンドウ上にビデオの再生ボタンっぽいのがあります。3つのうちどれでも好きなのをクリックしてください。Ubuntuが起動します。
ubuntu login:
という表示が出たら、先ほど設定したユーザ名とパスワードを使ってログインします。
SSHで接続する
インストールしたUbuntuはUTMのバーチャルコンソールから操作することもできるのですが、使い慣れたMacのターミナルからSSHで接続するのが私の好みです。
まず、バーチャルマシンに割り当てられたIPアドレスを確認します。Ubuntuで次のコマンドを実行します。
$ ip address
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp0s10: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 66:15:f0:e8:64:a0 brd ff:ff:ff:ff:ff:ff
inet 192.168.xx.x/24 metric 100 brd 192.168.xx.xxx scope global dynamic enp0s10
valid_lft 85544sec preferred_lft 85544sec
inet6 fdc8:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx/64 scope global dynamic mngtmpaddr noprefixroute
valid_lft 2591985sec preferred_lft 604785sec
inet6 fe80::xxxx:xxxx:xxxx:xxxx/64 scope link
valid_lft forever preferred_lft forever
この場合は、2: enp0s10:
の下の inet 192.168.xx.x
がお目当てのIPアドレスです。このIPアドレスを使ってターミナルからSSH接続をします。
% ssh masawo@192.xxx.xx.x
はい、無事接続できました。
さいごに
どうせ仮想化ソフトで作ったVMなんてモッサリしてるんでしょと思っていたのですが、いざやってみると想像と違ってサックサクに動いております。この世のすべてのUbuntuはMac上のUTMで動かせばいいのにと思うほどです。お試しあれ。
Parallels DesktopにUbuntuをインストールした記事もあわせてどうぞ。
でわでわ
コメント
コメント一覧 (1件)
[…] https://oopsoop.com/ubuntu-on-mac-using-utm/ […]