intel Mac に Windows11 をインストールする

![IMG_0936.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2147055/2ab68726-d0b0-7c02-cba6-7f9667a6544a.jpeg)
TPM2.0のチェックを回避して、MacBookPro2019(intel CPU)にWindows 11をインストールしました。
Win10とWin11のisoイメージを使い、WinPEでセットアップOSにドライバを追加して、USBの
インストール媒体を作成します。

10/15追記：もう少し簡単バージョンに移動して下さい。(このページは、個人的には残しておきたい情報を詰め込んではいるのですが、インデントとかよくわからず書き始めてしまったので、誤字脱字の修正やみやすさはもう直す気力がなくなりました。)

https://qiita.com/kmatsuura/items/9d098bb20f1c94851a72



#■動機
・intel Macに、Boot Camp で Windows 11を使いたい。
・クリーンインストールが好き
　（OSセットアップ時にアップデートインストールの選択肢はあります。私は試していませんが）
・WinPE*1、DISM*2のお勉強を兼ねて。
・公式情報 AllowUpgradesWithUnsupportedTPMOrCPU の使いかたが分からないかった。
　[Ways to install Windows 11](images\https://support.microsoft.com/en-us/windows/ways-to-install-windows-11-e0edbbfb-cfc5-4011-868b-2ce77ac7c70e)の情報です。(あまり真剣には調べてないです。・・・
　(10/12に、https://pc.watch.impress.co.jp/docs/news/1356709.html を発見。
　レジストリを設定したうえで、MediaCreationToolを作るのね。...dekinaizo.)


#■対象読者
　・Macに、Windows 11をインストールしたい方
　　（ここではMacへの導入手順ですが、ほかのPCにも応用できますね。)
　・OSやドライバのインストール、WinPEに興味がある方
　・自力で問題解決できる方

　挑戦される方は、自己責任で楽しんでください。
　・作業の難易度は低くはなく、万人向けではありません。
　・ディスクの初期化等の作業を伴うため、理解せずに作業すると失敗する可能性があります。
　　失って困るファイルや環境は、作業開始前に"外部"の記憶媒体にバックアップしましょう。
　・今回Windows 11のインストールができたとしても、Microsoft社は「Windows 11がTPM2.0
　　を要求しない」とは宣言されていません。将来、Windows Updateしたら動かなくなること
　　があるかもしれません。(・・・Microsoft社がTPM2.0難民を見捨てないことを切に願う。)<br>


#■intel MacにWindows 11を導入する基本アイディア
　Boot Camp関連で凄技を沢山公開されているjensd_be氏のアイディアベースです。
　[jensd_be Install Windows 11 natively on Mac](https://www.youtube.com/watch?v=N-61qdyppJ8&t=795s)　　
　彼のアイディアは・・・
　・インストール用OS(boot.wim他)は、Windows 10 ISOを
　・インストールするOSのイメージ(install.wim)だけ、Windows 11のISOのファイルを
　使うです。素晴らしい。

　ここでは、彼の手順に加えて・・・
　インストール用OS(boot.wim)に、Appleのデバイスドライバをあらかじめ組み込んで
　OSのセットアップ行程がスムーズに行くようなアレンジを加えています。<br>


#■必要な機器
​　(1)MacBook (今回Windows 11をインストールするターゲット装置)
　　　ターゲット装置は、Boot CampでWindows 10が導入された状態(windows用パーティション
　　　が既にある状態)から作業しています。<font color="Silver">
　　　Boot Camp未導入の場合、macOS上で、DiskUtilityを使ってパーティションを分ける
　　　ところから作業が必要になりますが、自分がそうであるように、多くのBoot Camperは
　　　Win10は導入済みであると思われるのと、自分でその作業をしていないので、ここでは
　　　挑戦しませんでした。(Youtubeを見ると、macOS上でパーティションを切る際、
　　　FAT32でフォーマットすると、APFSの外枠ができ、その外枠に対して、もう一度FAT32
　　　でパーティショニングしないと、裸のFAT32のパーティションが出来ないようです。)
</font>

　(2)USBメモリ8GB以上
　　　OSをインストールする具材を入れて、インストールメディア(USB)として仕立てます。

　(3)Windows 10が使える作業用PC(オプション・・・といえばオプション)<font color="Silver">
　　　ターゲットのMacBookとは、別のPCを使ってインストールメディア(USB)を作ります。
　　　操作が慣れた後なら、MacBook+Boot Camp上のWin10で、インストールメディアを作成
　　　し、その後作成で使ったWin10の環境を捨て、Win11を上書きすることもできます。
　　　出来るのですが、作業用PCが、ターゲット装置と異なると、有事の際のNet調査や、
　　　インストールメディアにもう一度手を入れたい等、断然作業が捗ります。</font>
　　　
　　　なお、[Install Windows 11 natively on Mac](https://www.youtube.com/watch?v=N-61qdyppJ8&t=795s)では、Windowsを一切つかわず、macOSだけで、
　　　すべての準備作業(wimの分割も！)をしています。驚嘆！
　　　
##■1．準備

###1.1 Windows 10, Windows 11のisoを入手
　　・https://www.microsoft.com/ja-jp/software-download/windows10ISO より
　　　Win10_21H1_English_x64.iso (<---日本語版等必要なエディションをDLします。)
　　・https://www.microsoft.com/ja-jp/software-download/windows11 より
　　　Win11_English_x64.iso (<---日本語版等必要なエディションをDLします。)
　　これらは、downloadフォルダに置いておきます。
<font color="Silver">
　　isoファイルは、macOS上で入手したほうが悩むことが無く、簡単です。
　　Windows PC でisoイメージファイルを入手する場合は、WebブラウザのUser agentを
　　Windows以外の装置に変えないと、isoファイルのダウンロードリンクに辿りつかない
　　もしくは、辿り着きにくいようです。
　　(User agentの変更はGoogle Chromeのデベロッパーモードでできます。)
</font>

###1.2 所有するMacのモデルに対応した Boot Camp Assistant を入手
　　これには、Brigadierというツールを使います。
　　Brigadierは、7zipを必要とするらしく、未導入であれば7-zipもインストールします。
　　https://www.7-zip.org/ より、OSに合ったインストーラを入手(私は7z2103-x64.exe。)

　　Brigadier
　　https://github.com/timsutton/brigadier/releases　より、brigadier.exe を入手。
　　これは、Appleに、macのモデルIDを通知して、当該モデルのBoot Camp Assistantを入手
　　することができるツールです。
　　モデルID名は、macOSのシステムレポートで確認します。
![mac_system_report_w1024.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2147055/4446a314-3987-45df-e3fb-79ceabe676b7.jpeg)
　　コマンドプロンプトを開き、カレントディレクトリを、でbrigadier.exeがあるフォルダに
　　移動して

    brigadier.exe --model MacBookPro16,1  　//システムレポートのモデルIDを引数に詰める
　　を実行します。しばらくするとAppleのサーバからBoot Camp Assistantが落ちてきます。
　　BootCamp-061-62383
　　├─\$WinPEDriver\$
　　└─BootCamp
　　(\$WinPEDriver\$は、OSのセットアップで使われるドライバ、
　　BootCampは、Win11導入のあとでインストールするドライバで、ファルダ名やコンテンツ
　　は、モデルIDにより多少変わります。AutoUnattend.xmlがあったりなかったり・・・。)<br>


###1.3 WinPEの編集環境構築のため、Windows ADKと、Windows PE add-onをインストール
　　必要なのは、Windows 10 21H1に対応した「ADK Version 2004」と ADK Version 2004に
　　対応する「Windows PE add-on」の2点。

   https://docs.microsoft.com/en-us/windows-hardware/get-started/adk-install
　　から、
　　・[Download the Windows ADK for Windows 10, version 2004](images\https://go.microsoft.com/fwlink/?linkid=2120254) 
　　・[Download the Windows PE add-on for the ADK, version 2004](images\https://go.microsoft.com/fwlink/?linkid=2120253)
　　をダウンロード、インストールします。<font color="Silver">
　　(このページでダウンロードするのは、小さいセットアップツールです。
　　インストールすべきツールの実体は、このセットアップツールを使ってダウンロードする
　　ものです。）</font>
　　
　　Windows ADKでインストールする機能の選択は、標準のままでもよいです。・・・が、
　　[V]Deployment Tools
　　[V]Configration Designerを選択。
　　2点があれば、今回の作業は可能です。![SelectionsofADK_2selected.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2147055/6275083d-20c9-dd89-b6b3-9ae1b9bf9085.png)
　　
　　Windows PE add-on は、特に選択肢はありません。標準設定のままインストールします。
　　※インストールパス等は、選べますが、標準のまま変えないほうがよいでしょう。


##■2．WinPEを使って WIMファイルを編集する。

作業は、C:\Users\%USERNAME%\Downloadsで行います。
こんな感じでフォルダがファイルを配置して作業を開始します。

\Downloads
├─Win10iso_Sources
│　└─boot.wim ...Win10_21H1_English_x64.isoのSourcesにあるboot.wimをここにコピー
│
├─Win10iso_Sources_bootwim_mount 
│　(boot.wimをマウントするときの作業領域。事前にこの名称でフォルダを作成しておく)
│
├─Win11iso_Sources
│　└─install.wim......Win11_English_x64.isoのSourcesにあるinstall.wimをコピー
├─brigadier.exe   ....(BCAssistantをダウンロードしたら、もう使いません。)
└─BootCamp-061-62383 ..以下、Brigadierでダウンロードしたもの
    ├─\$WinPEDriver\$..WinPE/OSのSetup中に必要とされるドライバ
    └─BootCamp ........Windows 11(使うOS)で必要とされるドライバ

###2.1 インストール用OS「Boot.wim」に、macのデバイスドライバをインストールする。
　　(1) boot.wim の index:1(WinPE)をマウントする。

        dism /mount-image /ImageFile:C:\Users\%USERNAME%\Downloads\Win10iso_Sources\boot.wim /index:1 /mountdir:C:\Users\%USERNAME%\Downloads\Win10iso_Sources_bootwim_mount

　　　　これで、Win10iso_Sources_bootwim_mountに、boot.wimのindex:1が展開される。

　　(2) Win10iso_Sources_bootwim_mountに \$WinPEDriver\$を適用

        dism /Image:C:\Users\%USERNAME%\Downloads\Win10iso_Sources_bootwim_mount /Add-Driver /Driver:C:\Users\%USERNAME%\Downloads\BootCamp-061-62383\$WinPEDriver$ /Recurse -ForceUnsigned
　　　※-ForceUnsignedをつけないと、IntelMEI\heci.inf のインストールに失敗します。

　　(3) Win10iso_Sources_bootwim_mountを、コミットして(固定させて)アンマウントします。

        dism /unmount-image /mountdir:C:\Users\%USERNAME%\Downloads\Win10iso_Sources_bootwim_mount /Commit

　　　　Win10iso_Sources_bootwim_mountは空になり、boot.wimには、ドライバが追加
　　　　されたため、サイズが変わってます。

　　(4) boot.wim の index:2(Windows Setup)に対しても同じことを繰り返します。

        dism /mount-image /ImageFile:C:\Users\%USERNAME%\Downloads\Win10iso_Sources\boot.wim /index:2 /mountdir:C:\Users\%USERNAME%\Downloads\Win10iso_Sources_bootwim_mount

       ※ index:の後ろの数字が1から2に変わっています。

　　(5) (2)と全く同じコマンドを実行して、index:2に対してドライバを追加します。

　　(6) (3)と全く同じコマンドを実行して、コミット、アンマウントします。
　　　　Win10iso_Sources_bootwim_mountは空になり(忘れがち)、boot.wimには、さらに
　　　　ドライバが追加されたため、サイズが変わってます。　　　　

　　index:1と2ってなに？

        dism /Get-ImageInfo /ImageFile:C:\Users\%USERNAME%\Downloads\Win10iso_Sources\boot.wim

　　をすると正体が判明します。

    Index : 1
    Name : Microsoft Windows PE (x64)　　 Setupより前に動く(だと思う※)OS
      :
    Index : 2
    Name : Microsoft Windows Setup (x64)  OSのSetup中に動くOS。
      :
　　<font color="Silver">
　　※今回、index:2にドライバをインストールしないと、OSのsetupが表示されてから、
　　mac内蔵の周辺機器(Keyboard、タッチパット)が使えなかったので、index:2が使われている
　　ことは確実なんですが、index:1のWinPEが動いているのか？までは確認しませんでした。
　　(もしかするとindex:1に対するドライバ追加作業は不要かもしれませんが、大した作業ではない
　　ので、両方ともやておけば間違いないでしょう。)
　　</font>

###2.2 インストールするOS(install.wim)を分割する
　Windows 11のOSのイメージは、FAT32の上限サイズを超えるため、取り出して分割します。

    Dism /Split-Image /ImageFile:C:\Users\%USERNAME%\Downloads\Win11iso_Sources\install.wim /SWMFile:C:\Users\%USERNAME%\Downloads\Win11iso_Sources\install.swm /FileSize:4000

　　Win11iso_Sourcesフォルダの下には、下記2点のファイルが増えています。
　　　install.swm
　　　install2.swm
　　同フォルダには、オリジナルinstall.wimもありますが、こちらはもう不要です。

##■3．インストールメディア(USB)の作成
###3.1 USBをフォーマット
　　diskpartで、パーティション作成とフォーマットします。
　　※diskpartを使わなくてもよいかもしれませんが、私は使います。
　　USBを作業用PCに接続して、diskpartを起動して以下のコマンドをたたきます。
　　(diskpartはいろいろな場所で紹介されているので省略。さらりと書いていますが、
　　select disk X で番号を間違えると大変なことになります。注意！)

    select disk X		#ターゲットのディスクの番号、list diskで事前に調べます。
    clean
    create partition primary 	#USBのサイズによってFAT32の上限指定"size=32768"が必要
    format quick fs=fat32
    assign			#ドライブレターの割り当て割り当てられれていれば不要
    active			#起動パーティションにするマーキング(だと思っています)
				#activeコマンドは、gptだとエラーになります。気にしない。

###3.2 インストールメディア(USB)に具材を集約
![Win11_USB_inst_Files_wMemo.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2147055/4c8a424f-838c-ed91-ead2-a74c6b61418a.png)

どこが違うの？の確認の意味で、
左にオリジナル(Win10_21H1_English_x64.iso )
右に、今回作成したインストールメディア(USB)差分比較してみた結果です。
![Win10isoVSArrangedUSB.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2147055/4dcb4a98-61dd-9560-1d38-3b4718223832.png)


##■4．MACへインストール
ここまで来たら勝ったも同然です。
(二日間やってきて疲れが出てきたので、最後はかなり端折りながら説明します。)

###4.1 Apple T2セキュリティチップがついたMacの場合
　　システム起動時、[COMMAND]+[R]を押して、リカバリモードで起動。
　　(管理者パスワードをしばしば要求されるので入力。)
　　メニューバーの Utilities > Startup Security Utility を起動して、
　　Secure Bootの設定を、Full Securityから、Midium Security に変更します。

![midiumSecutrity.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2147055/e77752c1-c36c-b663-7121-113596cc9ea2.png)
　　詳細はこちらへ　https://support.apple.com/en-us/HT208198

###4.2 USBブートから Windows 11をインストール
　　作成した、インストールメディア(USB)をMACに挿入して、システム起動時に、[option]キーを
　　押すと起動ディスクが選べるので、USBから起動。
　　OSのセットアップが開始したら、もともとWindows 10がいたNTFSのパーティションに
　　インストールします。あとは選択肢に任せて進むだけ。
　　(Win10を導入していたらプロダクトキーは入れないで次に進んでよいはず。
　　なんだけどよくわかっていないので、ＰＣの名称はWin10と同じ名称にしました。)

###4.3 Windows 11でドライバインストール 
　　Windows 11が起動したら、インストールメディア(USB)にある、BootCampフォルダにある、Setup.exe
　　を実行して、Appleのデバイスドライバをインストールします。



*1 Windows Preinstallation Environment：
　　OSをインストールするための小さいOS。OSのセットアップツールはこのOS上で動いて
　　大きなOS(Windows 10や、Windows 11)をインストールします。<br>
*2 Disk Image Servicing and Management
　　wim(Windows IMaging format)形式で固められた、ファイルをエディットしたり
　　使っているOSに機能・サービスインストールしたりするために使うコマンドです。

作業メモ（お世話になっています）
　https://qiita.com/twipg/items/d8043cd4681a2780c160