⚰️

Intel MacBook Pro (Mid 2014) に Ubuntu 25.04 をインストールする

に公開

https://zenn.dev/plesio/articles/54d8771dc69bfe

の物語の続き。

要約

  • 直インストールは相変わらずできない。
    • 24.10経由してアップグレードしても普通にブランクスクリーン問題が再発するぞ。
  • でも、カーネルバージョンを最新化してやれば動くぞ!!
    • 同じ現象喰らってるレガシーSoCマシンは同様の方法でいけるはず
  • 25.04 標準のカーネルバージョンはマジで危ないからなんとかしてくれ。

背景

2014 年製 MacBook Pro 13 inch. さすがに11年前のモデルを使い続けるのは厳しく、最新のmacOSを入れ続けるのも厳しい。
なので、Ubuntuを入れて、ちょっとしたブラウジングやSSH作業をするためのマシンにしてみたら、結構リビングで使うのに良い感じだった。

ただ、非LTSの 24.10を入れたため、次のバージョンがきたらさっさと乗り換えないといけないが、25.04 の初版には致命的なバグがあり、Intel Macではインストーラの起動すらできなかったため、時期をまって再挑戦した。

なお、 25.04 のロンチでずっこけた記録は以下。

https://zenn.dev/plesio/scraps/a06414f02b95af

環境

  • MacBook Pro Retina Mid 2014
    • もう11年前のモデル...
      • まだまだディスプレイに劣化が少なくて、下手な中華格安ノートより発色が良いって、おまえRetinaディスプレイどんだけすげぇんだよ・・・
    • メモリを16GB+USキーボード仕様でCTOしたモデル。
    • Mac は Mojave に固定中
      • 32bitアプリが動かせる最後のOSバージョンで、一部ごくたまに使うアプリがあるが、SteamやFirefox/Chromeなど、大手はOSサポートを切っているため、もはやオフラインでしか使い道がない。。
  • USB有線LAN or USB無線LAN のアダプタ
    • MacBook の 内蔵Wifi がデフォルトインストール直後では使えないため。
  • USBメモリ 8GB or later
    • iso焼いてブートするためのやつ

ストレージの配分状態

  • 全体:250GB

前回 24.10 インストール時

  • MacOS:220GB
  • Ubuntu:30GB
    • Swap:4GB
    • /:26GB

オフィスやマルチメディア系のアプリを一切入れずにブラウザとエディタだけでしか作業してなかったので、なんとかなった。

今回

  • MacOS:200GB
  • Ubuntu:50GB
    • Swap:4GB
    • /:46GB

Mac側で起動すらしないアプリや、キャッシュに混ざっていたゴミファイルなどを削りに削って追加の20GBを捻出した。

今回、Ubuntu 25.04 を直接インストールすることは厳しいため、10GB近いアップグレードデータを処理するためにも、多少余裕を持たせることにする。

手順

25.04 の ISO は2025/04リリース版のまま放置されており、更新がかかっていないため、最初に試したブランクスクリーン問題は解決されていないはず。

そのため、今回、アップグレードによるバグがFIXされたという話を見聞きしたため、そちらのパスを利用することにする。

インストーラの準備

ここでは前回と同じ Ubuntu 24.10 の ISO を使う。

パーティションの設定

まず、前回使っていた30GB領域を消去する。

UNTITLED / MS-DOS(FAT) のパーティションでかまわないので1回フォーマットする。それをしないとMac上でマウントできていないため、パーティションをいじれない。

選択できるサイズは円グラフ上で操作する。Macが認識しているディスクの空き容量の範囲でしかパーテを切れないため、予めCacheやゴミ箱を整理しておくと良い。

その後、「パーティション作成」で、次の順番で操作する。

  1. UNTITLEDを削除してMacOS領域に合流させる
  2. 今度は、改めてMS-DOS(FAT)領域を切り、50GBを付与して分離させる。

領域を切る操作は数分単位で時間が掛かるので、ISO焼くのと並行してやると時短。(ISO焼く方がはるかに早く終わるけど。

UbuntuのUSBブート+インストール

今回は時短のため、Mac に USBメモリと有線LANを両方つけた状態で起動+optionボタンを押し続ける。

ブートメニューが出たら、EFI Bootを選択して、あとは画面の指示に従ってインストールを進める。
その際、インストール先を「手動パーティション」を使って正しく指定する必要がある

  • プロプライエタリなソフトウェアはインストールしないこと.
  • 「どうやってUbuntuをインストールしますか?」
    • 手動パーティショニング
    • sda3/VFAT を まず「-」で空き領域化する。
    • 「+」ボタンで新規パーティションを作成する。
    • フォーマット:ext4
    • マウントポイント:/
    • ブートローダー:自身のディスクを指定(Macと混在していてもここを指定する)

間違えてUSBメモリ自身を指定したり、メインOSの領域をフォーマットしたりしないこと。

インストールが始まったらしばらくかかるため、10分程度放置。

Ubuntu の起動 と Ubuntu 25.04 のアップグレード

インストールが終わったら、USBメモリを抜いて再起動する。

MacOSとは別にブートできるディスクが出てくるためそれを選択する(それがUbuntu)

初期セットアップウィザードはそこそこに終わらせて、次のコマンドを実行する。
(デフォルトサーバーの速度が遅ければ、予め国内のミラーサーバーに変えておくなどは事前にどうぞ)

sudo apt update 
sudo apt upgrade -y
sudo apt dist-upgrade -y
# sudo apt install -y update-manager-core
sudo apt autoremove -y
sudo apt autoclean -y
sudo apt do-release-upgrade -c
# ここで、Ubuntu 25.04 があるよ!って言われるはず。
# 問題なければ実行.
sudo do-release-upgrade

作業中に、「新しいバージョンのUbuntuが利用可能です」といったダイアログが出てくる可能性がある。そのときは「次回にたずねる」あたりを選択して、一旦回避する。

これで、Ubuntu 25.04 のアップグレードが始まる。
インストールの時にも時間がかかったが、この一連の作業でもさらに時間がかかる。

SSDなんだけど、10年前のSoCなので、結構時間がかかる。

時間がかかる。

現状のスタンダードなパソコンのI/O速度と意外に差がないはずなんだけどね。SoCがやっぱり古いせいかい、それなりに火を噴きながら時間を溶かしている。

前回と同じブランクスクリーン発生→回避してとりあえず起動

再起動をかけると、あら不思議、前回と同じブランクスクリーンが発生する。(直ってないやんけ!!!)

だけど、前に試した時は直接インストールを試みたが、今回はUbuntu24.10をインストールしたときの資産が若干残っているので、とりあえず、起動までこぎつけようと思う。

「control 」+「option (Alt)」+「shift」+ 電源キー 全部長押し

という、有名なハードリセットを行い、強制的に再起動をかけると、次にUbuntuを起動しようとするとGNU GRUB画面が出てくるはず。
その状態を呼び出せたら、次の手順でまずはUbuntuを起動する。

  • 「Advanced options for Ubuntu」を選択。
  • 「Ubuntu, with Linux 6.11.0-XX-generic」を選択。
    • ここで誤って「Ubuntu, with Linux 6.14.0-XX-generic」を選択すると、またブランクスクリーンが発生するので注意。
    • (recovery mode である必要はない。)

すると、V6.11.0-XX-generic のカーネルを用いて、Ubuntu 25.04がひとまず起動する。

最新版のカーネルを強制的に突っ込む

前情報から「Ubuntu 25.04で標準インストールされるカーネルバージョンが不味くて、それがIntel Mac(というかレガシーPC)と相性が最悪でGRUB周りがおかしくなる」ということなので、とりあえず、カーネルバージョンを無理やり最新にする。

カーネルのmainlineから6.14系の最新を取ってくる。

今回は、V6.14.8があったので、それを適用してみる。

#もしくは、Firefox でダウンロードする。URL長いのと、URL変わるかもしれないので。
wget https://kernel.ubuntu.com/mainline/v6.14.8/amd64/linux-headers-6.14.8-061408-generic_6.14.8-061408.202505221337_amd64.deb
wget https://kernel.ubuntu.com/mainline/v6.14.8/amd64/linux-headers-6.14.8-061408_6.14.8-061408.202505221337_all.deb
wget https://kernel.ubuntu.com/mainline/v6.14.8/amd64/linux-image-unsigned-6.14.8-061408-generic_6.14.8-061408.202505221337_amd64.deb
wget https://kernel.ubuntu.com/mainline/v6.14.8/amd64/linux-modules-6.14.8-061408-generic_6.14.8-061408.202505221337_amd64.deb

sudo dpkg -i linux-*.deb
reboot

次回、Ubuntu 25.04 が起動した際、System DetailsのKernel Versionが 6.14.8 になっていれば、カーネル更新に成功したこととなる。

動作しないカーネルバージョンの削除

まだ apt upgrade とかをやるには危ない。

dpkg -l | grep linux-image
# きっと、6.14.0-15.15 とか、6.14.0-XX系がでてくるはず。
sudo apt purge lunux-image-6.14.0-15-generic
reboot

これで、ひとまず起動できないカーネルが手違いで起動されることはなくなる。
6.11系は、万が一のために残しておく。

ライブラリ更新

晴れてライブラリ更新をする。

sudo apt update
sudo apt upgrade -y

# Wifiドライバ
sudo apt install -y broadcom-sta-dkms
# 日本語入力
sudo apt install -y fcitx5-mozc
im-config -n fcitx5

# reboot.
sudo reboot

これで Wifi と 日本語入力がなんとかなるはず。
Wifiドライバは、24.10と同じものがインストールできた。

最低限やっとく設定

「設定」→「電源管理」→「画面の明るさの自動調整」をOFFにする。

Ubuntuの輝度調整ロジックとMacBookのハードと相性が悪くて、結構極端な挙動を起こしてくるので、OFFっておいたほうがいい。

あと、サスペンド問題は先手を打つ。

sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target

ひとまず、インストール完了。

前回いろいろセッティングを詰めたあれこれはまだやっていないが、ひとまず、Ubuntu 25.04 が動くようになった。

何回か再起動をしたが、ブランクスクリーンは発生せず、無事に起動できている。

24.10で実施した細かいチューニングが流用出来る場合は追記せず前回の記事をそのまま私も利用していく。以後は、新規の事項は追記というかたちで、メモを追加していく予定である。

とりあえず、UbuntuチームはUbuntu 25.04とアップデータとインストーラに付けているカーネルバージョンをどうにかしてくれ。

参考文献

Discussion