先週windonws11のシステム要件が発表されました。ハードウェアに関してはここ数年以内のPCならば余裕でクリアしているハードルの低さですが、TPM2.0やセキュアブートなどOSより深い部分で引っかかることが多いようです。
私のメインPCでもこの二箇所に引っかかってしまったので、windows11 readyにするためにTPMとセキュアブートについて変更していました。
目次
1. 確認環境
- マザーボード: ROG Strix Z390-F Gaming
- CPU: Intel Core i7-9700K
2.TPM2.0を有効化する
2-1. サポートされているCPUか確認
TPMモジュールを搭載している人は殆どいないと思います。しかし、比較的最近のCPUならばファームウェアTPMが実装されているので、使用しているCPUがwindows11でサポートされているかを確認する必要があります。
Windows 11 Supported Intel Processors
Windows 11 Supported AMD Processors
2020年6月末においては、基本的にIntel CPUの場合は第8世代(Coffee Lake-S)、AMD CPUの場合はRyzen 2000シリーズ(Pinnacle Ridge)以降がサポートされているようです。
2-2. TPM2.0が有効か確認
winキー+Rでファイル名を指定して実行を起動し、tpm.mscと打ってコンピュータのトラステッド プラットフォーム モジュール(TPM)の管理を起動します。
TPM2.0が有効の場合は次のようになっています。特にTPM製造元情報の欄にある仕様バージョンが2.0になっていることが重要です。
このように表示されていない場合はUEFIからTPMを有効化する必要があります。
2.3 UEFIでTPMを有効化する
UEFI上でIntel PPTやAMD fTPMを有効化する必要があります。まずはUEFIに入り関係する項目を探します。
私の環境の場合、詳細(Advanced)タブ内にある、PCH-FW Configurationを選択し、TPM Device SelectionでFirmware TPMを選択するとTPMを有効化できました。
別のマザーボードだとPCH-FW Configurationは同じですが、TPMの有効化に関しては表記が変わるようなので、とりあえずUEFIでPCH-FW Configurationを探すのが良さそうです。
2.4 TPMが有効化されたか確認
windows上からTPMが有効化されたか確認します。色々確かめ方はありますが、2-2で用いたtpm.mscを実行して確認するといいと思います。
2 セキュアブートを有効化する
TPM2.0だけやけにクローズアップされていますが、セキュアブートも引っかかりやすいところだと思います。特にシステムドライブだけずっとOSアップデートで使い続けていると起こりやすいと思います。
2-1. セキュアブートが有効か確認する
winキー+Rでmsinfo32を実行します。
この画面で確認すべきは2箇所です。BIOSモードとセキュアブートの状態です。BIOSモードがレガシーの場合、セキュアブートはサポートされません。BIOSモードがUEFIの場合、UEFI上で設定を変えるとセキュアブートが有効化されることがあります。
私の環境ではBIOSモードがレガシーなので、ここをUEFIに変えるところから作業を進めていきます。
なぜBIOSモードが二種類あるかについては、第9回 UEFIサポートとセキュアブートを読むといいと思います。
2-2. システムドライブのパーティション形式を確認する
windows上で作業を行います。
ブートモードをUEFIにするためには、まずブートするドライブのパーティション形式をGPTにする必要があります。
現在のパーティション形式を確認する方法は色々ありますが、今回はMBR2GPTコマンドを使って変換するため、今後の作業の利便性からコマンドプロンプトまたはPowerShellで確認します。
私の環境ではWindows TerminalでPowerShellを実行しています。
まずはコマンドプロンプトもしくはPowerShellを起動します。そして、次のコマンドを実行します。
diskpart
すると次のように表示されます。
GPTの項目に*がない場合はパーティション形式がMBRという意味です。
また、ここでは変換するディスクの番号を記録しておきます。私の環境ではディスク 2がシステムドライブです。
確認が終わったらdiskpartを終了させます。
exit
2.3 MBR2GPTを用いてGPTに変換する
まずは変換できるか検証をするために次のコマンドを実行します。
mbr2gpt /validate /disk:2 /allowFULLOS
検証が成功すると次のように表示されます。
検証に成功したら、次は変換していきます。続けて次のコマンドを実行します。
mbr2gpt /convert /disk:2 /allowFULLOS
変換が成功すると次のように表示されます。
新しいシステムをブートする前にブートモードをUEFIに変えてくれと言われているので変更していきます。
2.4 ブートモードをUEFIに変更する
UEFI上で作業を行います。
起動(Boot)タブ内のCSMを選択します。
次にCSMに起動をEnableにし、起動デバイス制御をUEFI、またはUEFI/レガシーOPROMに変更します。
2.5 セキュアブートを有効化する
起動(boot)タブ内にあるセキュアブートメニュー内の設定を変更します。
OSタイプをUEFIモードにします。
プラットフォームキー(PK)が読み込まれていない場合、セキュアブートキーが作成されていない可能性があります。セキュアブートキー管理に入り、セキュアブートキーの初期化を行います。セキュアブートキーが作成されると、先程の画面のプラットフォームキーが読み込み済みになります。
2.6 再びセキュアブートが有効か確認する
windows上で作業します。
2-1と同じくwinキー+Rからmsinfo32を実行し、システム情報を表示させます。そして、BIOSモードとセキュアブートの状態を確認します。BIOSモードがUEFI、セキュアブートの状態が有効になっていれば正しく変更された事がわかります。
3. windows11チェッカーで確認してみる
今回の目的であるwindows11にアップデートできるか確認してみます。(2020年6月30日時点では互換性の確認をするソフトが準備中に変更されてダウンロードできなくなっていました)
これでwindows11にアップグレードできる環境になりました。
4. おわりに
TPM2.0とセキュアブートを必須条件に入れたことによって思った以上の反響があったらしく、緩和を考えているというニュースが流れてきたりしています。現在提供されているPreview版ではTPMが無効でもインストールはできるようです。
また、CPUのサポートもPreview版ではIntelは第7世代、AMDはRyzen 1000シリーズでも動かすことが可能のようです。
ここからwindows11のリリースまで最小要件がどう変更されていくかわかりませんが、とりあえずMS社の言う”モダンなPC”(TPM2.0,UEFIでブート)にしておいて損はないと思います。