MacBook Air M1 に Kubuntu を入れる
昨年勤務先から払い下げてもらった MacBook Air (M1, 2020) なのだが, Homebrew のインストールで「面倒くさい」となって最初の1フィートで挫折していた。 外出先では (その前に買った) Chromebook で十分賄えてたというのもある。
とはいえ,いつまでも放置というわけにもいくまい! と今年に入ってようやく重い腰を上げることにした。 以下の優れた記事を見かけたというのもある。
痒いところに手が届く良記事だった。 是非 Zenn 本の体裁にして(もしくはガチの本として再構成して)いただきたいものである。 感謝 🙇
構成
上で挙げた記事を参考に,今回は以下のように構成した。
- ハードウェア: MacBook Air (M1, 2020)
- チップ: Apple M1 (8コア)
- メモリ: 16GB
- ストレージ: 256GB
- モニタ: 内蔵13インチ Retina ディスプレイ
- ホストOS: macOS Sequoia バージョン 15.3
- 仮想環境: UTM for Mac 4.6.4
- QEMU 9.1 ARM Virtual machine (ハイパーバイザー Type 2)
- ゲストOS: Ubuntu Server for ARM 24.04.1 LTS + Kubuntu Package
自宅機が Ubuntu 機なので馴染みのある構成にしたかったのだが Ubuntu desktop の最新 LTS の ARM 用インストール・パッケージはないみたいなので,まずは省構成の Ubuntu サーバを入れて,その後 Kubuntu パッケージを組み込んで,ちまちまとチューニングしていく感じ。
Kubuntu は Ubuntu のフレーバーのひとつで,デスクトップ UI に KDE Plasma を使っているのが特徴。 良く言えばカスタマイズしがいのある,悪く言えば(Ubuntu desktop に比べて)手のかかるディストリビューションと言える。 とはいえ,今回みたいなよく分からないハードに載せるのならチューニングは必至だろう,という判断で今回の構成にした。
仮想環境については,軽くググってみたところ Parallels を買え! という意見が多かったように見えた(あくまで印象,定量評価ではない)。 Parallels のほうが安定しているそうな。 私としてはお金を払ってまでやる気はなかったし,最初に挙げた記事を見る限り UTM でも大きな問題はなさそうと判断して UTM を導入することに決めた。
ちなみに UTM は Apple Store で「購入」することもできる(1.5K円)。 この場合,支払ったお金は開発資金に回されるそうな。
仮想マシンのセットアップ
UTM のインストールや使い方については「新MacでLinuxシリーズ 目次」からリンクされている各記事を見ていただくとして,ここでは仮想マシン作成時の構成について覚え書きとして残しておく。
![新規仮想マシンを作成 - Linux](./setup-new-machine-1.png)
QEMU (Quick EMUlator) を使うので「Apple仮想化を使用」はチェックしない。 Ubuntu Server の ISO イメージはあらかじめダウンロードしておく(ARM 版を取得すること)。
![新規仮想マシンを作成 - ハードウェア](./setup-new-machine-2.png)
既定ではハードウェア・リソースの半分を専有しようとする。 私の場合は Linux 環境がメインなので,更に多めにメモリ10GBでコアも6つ専有することにした(内部で JIT が走るのでガメすぎないこと)。 ちなみにこの設定で仮想環境を立ち上げた状態で macOS 側で YouTube が問題なく聴けた。 メモリとコア数は後から変更可能なのでテキトーでも大丈夫。
「ハードウェア OpenGL アクセラレーションを有効にする」をチェックしたのだが,失敗だったかもしれない(これについては後で述べる)。 この項目は仮想マシンを作成したあとは修正できないので注意。
![新規仮想マシンを作成 - ストレージ](./setup-new-machine-3.png)
ストレージについては既定だと最小の64GBだけ使おうとする。 今回は最大サイズの半分を指定した。 指定したサイズを最初から専有するわけでないのでご安心を。
以下は「新MacでLinuxシリーズ 目次」に従って Kubuntu のインストールが完了して再起動した状態。
![Kubuntu (1)](./kubuntu-1.png)
その後も色々とセットアップしてこんな感じに(以下は全画面表示)。
![Kubuntu (2)](./kubuntu-2.png)
とりあえずこんなもんかな。
チューニングは続く
Tailscale for Linux
外で使うマシンなので,出先から自宅 NAS にアクセスするために Tailscale を導入する。
つっても
$ curl -fsSL https://tailscale.com/install.sh | sh
を実行するだけ。 これで環境に合わせて apt リポジトリのセットアップから Tailscale のインストールまでやってくれる。 あとは
$ sudo tailscale up
とすれば systemd で動き始める。
Tailscale 越しの NAS アクセスを /etc/fstab
で定義してマウントしまえばいいと思ったのだが,マシン起動時に Tailscale サービスへ認証を行う方法を思いつかなかったので noauto
を指定して起動時にマウントしないようにした。
UTM はマルチディスプレイに対応しているが…
UTM はマルチディスプレイに対応してるそうだが,自動的に複数のディスプレイを認識して分割(またはミラーで)表示するるわけではなく,あらかじめ仮想マシンの設定で
![仮想マシンの編集](./setup-new-machine-6d.png)
こんな感じにディスプレイを必要なだけ追加していく。 これで仮想マシンを起動した際に設定したディスプレイの数だけウィンドウが起動する。
ただ,セカンダリのディスプレイのウィンドウ画面のチラツキが酷くて使い物にならなかったのでマルチディスプレイは諦めた。 まぁ,出先で運よくモニタを借りれるとは限らないからな。
もしかして「ハードウェア OpenGL アクセラレーションを有効」にしたのは失敗だった?
なんか VS Code と相性が悪いのかたまにウィンドウが真っ黒になるんだよな。 一度こうなると再起動しない限り回復しない。 前節のマルチディスプレイでちらつきが酷い件も併せ,原因は分からないが,今になって考えるに
- 「ハードウェア OpenGL アクセラレーションを有効にする」にチェックを入れないほうがよかった?
- ホストOS側で YouTube を流しっぱなしにしてたのがあかんかった?
あたりは検証したほうがいいかもなぁ。
それでも日常使いする程度には整ってきたので,今後は Chromebook じゃなくてこちらを持ち歩くことになるかな。
Mac なんも分からん
作業していて痛感するのだが,マジで macOS さっぱり分からん。
たとえば,ブラウザで UTM のバイナリパッケージ UTM.dmg
をダウンロードしたまではよかったが,そこからどうすればいいのか分からない。
恐る恐るダブルクリックしたらこんなウィンドウが出る。
![どうすりゃいいの?](./install-utm.png)
しょうがないのでググってはじめて「左のアイコンを右にD&Dすればいいのか」と分かった。
せめて説明文を書いてくれ orz
一事が万事こんな調子なのよ。 私のような年寄りには macOS を使うためのチュートリアルが必要だな!
それにしても,メインで使う OS をゲスト OS として仮想化して使うのは筋がよくないな。 まぁ MacBook を完全に Linux 機として換装できなさそうだからこういう手段を執らざるを得なかったんだけど。 お高い MacBook を買って,わざわざ Linux 機や Windows 機として使うやつはおらんじゃろ。 私の場合は,たまたま払い下げ品を安く手に入れられただけで,定価なら(自腹では)絶対に買わない。 Apple 信者じゃないので,私。
ある意味で贅沢な使い方かもな(笑)
参考
- スーパーユーザーなら知っておくべきLinuxシステムの仕組み
- Brian Ward (著), 柴田 芳樹 (翻訳)
- インプレス 2022-03-08 (Release 2022-03-08)
- 単行本(ソフトカバー)
- 4295013498 (ASIN), 9784295013495 (EAN), 4295013498 (ISBN)
- 評価
版元で PDF 版が買える。セキュリティ・エリアにも持ち込めるよう紙の本を買ったのだが,オンライン読書会が始まったので PDF 版も購入。Linux システムの扱い方に関するリファレンス本として優れている。最初に軽く流し読みして,必要に応じて該当項目を拾い読みしていけばいいだろう。
- CloudValley 0.6mm 超薄型 ウェブカメラカバー、メタルカメラカバー カメラ目隠し MacBook air・ノートパソコン・iMac・デスクトップ・PC・MacBook Pro・iPad・iPhone 8/7/6用、プライバシーウェブカメラプロテクション 【2本セット】ブラック
- CloudValley
- Personal Computers
- B079MCPJGH (ASIN), 0654070887322 (EAN), 654070887322 (UPC)
- 評価
ノートPCに見られるのが嫌なので目隠しした。
- エレコム ワイヤレスマウス Bluetooth Slint M-TM10BBBU/EC 薄型 静音 4ボタン プレゼンモード機能付 Windows Mac Android iOS iPadOS FireOS対応 ネイビーブルー
- エレコム(ELECOM) (Release 2020-11-24)
- Personal Computers
- B08LMYWKZD (ASIN), 4549550198189 (EAN)
- 評価
静音マウスを使いだしたら普通のマウスがカチカチ煩いと感じるようになってしまい,仕方ないので Bluetooth 無線マウスも静音マウスに替えた。単三電池一本で駆動するの助かる。
- Anker PowerExpand+ 7-in-1 USB-C PD メディア ハブ 85Wパススルー充電 Power Delivery USB-Cポート HDMI USB-Aポート
- Anker
- B07KJWYQJW (ASIN), 0848061003871 (EAN), 848061003871 (UPC)
- 評価
購入した Chromebook と周辺機器を繋ぐために購入。 USB-C は電源用(Power Delivery 対応)とデータ用の口がある。 HDMI の口もありモニタと繋ぐこともできる。 USB-DAC も繋がる。助かる。