ThinkPad T14 Gen 5 のセットアップ (セキュアブート完全理解編 & デュアルブート編)
ThinkPad T14 Gen 5 AMD を買いました。
この記事では Linux (Ubuntu 24.04 LTS) とのデュアルブート構成にセットアップする手順について書きます。
Windows の初期設定についてはこちら。
最初に書いておくと、この記事の単にデュアルブートの設定する手順はネット上にあふれるデュアルブート解説記事と同じです。しかし私が Secure Boot について理解したことを備忘録として書いています。結論から言えば、Ubuntu 24.04 LTS & ThinkPad T14 Gen 5 が最新の 2025 年現在、UEFI の設定で Secure Boot を無効にする必要はありませんが、“Allow Microsoft 3rd Party UEFI CA” オプションを有効にする必要があります 。
「Linux インストールするには Secure Boot 無効化」の現在
ネット上には Ubuntu のような Linux をインストールするには Secure Boot を無効化すべしと解説している記事が多数あります。昔はそれが必須だったのかもしれませんが、冒頭に書いたように少なくとも最近のバージョンの ThinkPad と Ubuntu の組み合わせなら、Secure Boot 有効のままインストールできます。
Secure Boot が無効だと Windows とのデュアルブートにしたときに Windows Hello の PIN と指紋認証が使えない、一部のゲームが起動しないなどの不便があるので、有効にしておくのが望ましいです。
そもそも Secure Boot とは?
そもそも Secure Boot とは UEFI の機能の一つです。UEFI とは、マザーボードに書き込まれているパソコン起動時に一番最初に実行されるプログラムです (今はほとんど BIOS ではなく UEFI でが ThinkPad では UEFI のことを一貫して BIOS と呼んでいるようです)。
普通のシングルブートの Windows では、ブート時に
- UEFI が Windows Boot Manager を起動
- Windows Boot Manager が Windows カーネルを起動
となります。
Secure Boot とは、ここに登場する Windows Boot Manager のようなプログラムが全て証明書信頼チェーンでつながって、改ざんされていないことを保証する仕組みです。
上の構成だと
- UEFI に内蔵された Microsoft UEFI CA 発行の証明書で Windows Boot Manager の署名を検証
- Windows Boot Manager が内包する証明書で Windows カーネルの署名を検証
というふうになります。ここで UEFI が検証に使う Microsoft UEFI CA は Microsft が運営する認証局です。 Windows Boot Manager の証明書を発行しています。
一方で、普通にシングルブート構成で Ubuntu をインストールすると
- UEFI が shim を起動
- shim が GRUB を起動
- GRUB が Linux カーネルを起動
となるように設定されます。shim と GRUB はオープンソースのブートローダーです。
また、この後説明する手順を踏んで Windows と Ubuntu のデュアルブートにすると、
- UEFI が shim を起動
- shim が GRUB を起動
- GURB が Linux カーネルまたは Windows Boot Manger のどちらかユーザーが選んだ方を
となるように自動で設定してくれます。
ここで、shim のような Microsoft が直接開発していないものは Microsoft UEFI CA の証明書で署名されておらず、検証に失敗し起動が許されません。そのため Linux をインストールしたかったら Secure Boot を無効にせよと書かれまくっているわけです。
ところが最近は事情が異なっていて、Microsoft はサードパーティ用に Microsoft Third-Party UEFI CA という CA も持っています。最近の大抵のパソコンメーカーの UEFI には、Microsoft UEFI CA だけでなく Microsoft Third−Party UEFI CA の証明書も搭載されています。ThinkPad では、UEFI の設定で “Allow Microsoft 3rd Party UEFI CA” をオンにすると、その署名も信頼されるようになります。shim は Microsoft Third−Party UEFI CA の証明書で署名されています。これで shim が起動できるようになります。続いて shim は GURB の、GRUB は Linux カーネルの署名を検証します。最終的に Linux カーネルが起動され、めでたしめでたしということです。shim という中間層は Secure Boot 下で Linux カーネルを起動できるようにするために存在しているのです。
なぜ Microsoft 社の CA が Linux の起動でこんなに重要な役割を担っているのかというと、もともと UEFI の Secure Boot は Windows 向けの仕組みとして策定されたからです。そこに Linux が対応するために 3rd Party UEFI CA で署名するという落とし所になったっぽいです (私の推測)。
仕組みの説明が長くなりましたがここからは本題の手順を説明します。
インストールメディアを作る
Rufus を使います。winget で入ります。説明略。
Windows の高速スタートアップを無効にする
説明略。
SSD に Ubuntu をインストールするためのパーティションを作る
SSD のパーティションは Ubuntu のインストーラで変更することもできますが、Windows 側で行うのが安全です。
管理者権限で「ディスクの管理」を開いて Windows のパーティションを縮めます。ここで縮めた分が Ubuntu で使える領域になり、その分 Windows が狭くなるので、大きさはよく考える必要があります。私は Ubuntu 100 GiB にしておきました。
詳しい手順は略。
BitLocker を無効化
今回買った ThinkPad は工場出荷時点で「BitLocker は有効だが Windwos が入っているパーティションは暗号化されていない」という中途半端な状態でした。ここから BitLocker を無効にするには、一旦 BitLocker で暗号化し、その後無効にするしかないそうなので、そうしました。
この手順を踏むのは、BitLocker の鍵は TPM というセキュリティ上重要なものを置くための専用のハードウェアに保存されていて、TPM のデータは上に書いた UEFI とか GRUB とかいうブート構成が鍵作成時から変わっていると複合できなくなります。ブート構成が変わったら不正の可能性を疑うというのは確かに理にかなっています。なのでデュアルブートにするにあたってそのあたりをガッツリ書き換える前に BitLocker は無効化しないとまずいです。
Secure Boot を無効にする
冒頭にも書きましたが、この手順は不要だと思います。Allow Microsoft 3rd Party UEFI CA を有効にすれば十分です。 しかし私は知らずにやってしまったので書き残しておきます。
Secure Boot を無効にします。起動時に ThinkPad のロゴが出ているときにエンターキーを押して BIOS (UEFI) の設定画面に入り、Security の項目から Secure Boot を無効にし、再起動します。
インストールメディアを使って Ubuntu をインストールする
起動時のロゴ画面でエンターキーを押し、インストールメディアから起動します。後はウィザードに従ってインストールを進めるだけです。ただし、その中で “How do you want to install Ubuntu?” と、既存の OS (Windows) と共存するか Windows を消して Ubuntu のシングルブートにするか聞かれるので、共存する方を選びます。
このようにすれば、Windows Boot Manager は消さずに Ubuntu の GRUB がインストールされます。インストールされた Ubuntu GRUB の起動時メニューに “Ubuntu” に加えて “Windows Boot Manager” という選択肢ができ、それを選ぶと、GRUB が Windows Boot Manager を続いて読み込み Windows を起動するようになります。Ubuntu は上で作った空き領域に新しく作られたパーティションにインストールされます。
昔の Linux と比べてかなり楽になりましたね。
参考までに、あらかじめパーティションの名前を調べておくと、ウィザードの最終確認画面で表示されるインストール先パーティションと見比べられるので、安心して実行できます。
Secure Boot を有効化
もうこれで Windows と Ubuntu のデュアルブートは達成していますが、UEFI の設定に入って Secure Boot を再度有効化します。“Allow Microsoft 3rd Party UEFI CA” オプションを有効にする のを忘れずに。UEFI の下の画像の部分で設定します。
忘れるとこのようなエラーが出て Windows Boot Manager にフォールバックします。
Secure Boot が無効のままだといろいろな不便があります。一番困ったのは Windows で PIN や指紋での認証 (Windows Hello) が使用できなくなることでした。 Windows Hello は TPM を使っているので、BitLocker と似たような理由でこうなるらしいです。
終わりに
この記事はこれで終わりです。無事インストールできました。
ところで最近の Ubuntu は BitLocker のようなディスクの暗号化に対応しているということを知りました。なんなら Secure Boot が有効だとインストーラで有効化できたらしいです。
https://pc.watch.impress.co.jp/docs/column/ubuntu/1540862.html
後でやってみるかも?