どうも、なかやんです。
本日は、小型シングルボードコンピュータ RaspberryPi についてのお話です。
実際に RaspberryPi4にARM版Windows 10をインストールしてみました。
以前はWindows on RaspberryPi(Windows on R)とビルドしたARM版 Windows のisoイメージファイルを使用しWindows 10や11をRaspberryPiにインストールしていましたが、最近はWoR-flasherというツールを使うのが主流なようです。WoR-flasherを使うと、RaspberryPi上から数クリックでARM版Windows 10/11をストレージに書き込むことができます。今回はWoR-flasherを使用し手持ちのRaspberryPi4 にARM版Windows 10 をインストールしてみました。
↓↓WoR-flasherのプロジェクトサイト↓↓
目次
2024年11月時点、最新のWindows 11は厳しそう
WoR-flasherを使ってWindows 11のインストールを何度か試みましたが、microSDカードへの書き込みは問題なく完了しました。しかし、ブートには成功しませんでした。
恐らく、ドライバや仕組みが最新のWindows 11(24H2、23H2)に対応していないため、ブートできないのではないかと考えられます。今後に期待しましょう。
UUP dumpから直接Windows 11 22H2をビルドしフォルダに保存すればWoR-flasherでもできそうな気もしますが、大変そうなので今回はWindows 10をインストールしました。
必要な物
WoR-flasherでRaspberryPiにWindows 10(11)をインストールするために必要な物のリストです。
- RaspberryPi4 本体(RaspberryPi 2~5でもOK)
- 電源
- HDMIケーブルとディスプレイ
- マウス
- キーボード
- RaspberryPi OS(Raspbian)が書き込まれたmicroSDカード
- microSDカード(Windows のインストール先・SSDを推奨)
- Windows のライセンス
WoR-flasherのプロジェクトサイトによると、WoR-flasherはRaspberryPi上で実行する必要があるようです。そのため、RaspberryPi OS(Raspbian)が書き込まれたmicroSDカードが必要です。
また、Windows のインストール先はmicroSDカードでも問題ありませんが、速度・安定性の問題もあるのでUSB接続のSSDをおすすめします(なかやんはmicroSDを使いましたが...)
RaspberryPiにインストールしたWindows を普段使いするのであれば、規約的にもライセンスが必要ですね(Windows 10以降はアクティベーションをしなくとも特に問題なく使えますが...)
前準備
最初に、RaspberryPi OSの書き込みとセットアップを済ましておきましょう。
RaspberryPiのドキュメントに詳しいセットアップ方法が書かれています。
WoR-flasherのダウンロードとインストール
RaspberryPi OSでターミナルを起動し、次のコマンドを入力、Enterキーを押しコマンドを実行します。
git clone https://github.com/Botspot/wor-flasher

GitHub上のWoR-flasher リポジトリ(ファイル)を自分のローカル環境にコピーするためのコマンドです。このコマンドで実行した処理はすぐに完了します。
次は、以下のコマンドを入力します。
~/wor-flasher/install-wor-gui.sh

このコマンドは、先ほどローカル環境にコピーしたスクリプトを実行するものです。
実行後、WoR-flasherがインストールされ、GUI上でWoR-flasherが起動します(次回起動時もこのコマンドで問題ありません)
microSDカードにWindows 10 の書き込み
WoR-flasherを起動すると、次のようなウインドウが表示されます。

ここでインストールしたいOSと、RaspberryPiのバージョンを選択します。OSはWindows 10と11が選択できるようです。選択後「Next」をクリックします(2024年11月時点、Windows 11は失敗しました)
次は言語の設定です。

なかやんは 日本語以外厳しいので「ja-jp Japanese(Japan)」を選択し、「Next」をクリックしました。
次はWindows のインストール先ストレージの選択です。RaspberryPi OSのインストールされているストレージ(起動中のストレージ)は選択できません。

ここで選択したストレージはWindows のデータに書き換えられるので ストレージ内に既存のデータがある場合、予めバックアップを取っておきましょう。「Next」をクリックします。
最終確認とconfig.txtの編集です。

特に問題が無ければそのまま「Flash」をクリックします。
OSイメージなどのダウンロードと書き込みが始まります。

この操作には暫く時間がかかるのでゆっくり待機しましょう(なかやんの環境では15分ほどかかりました)
問題発生

エラーが出て止まってしまいました。「Failed to make GPT partition table on /dev/sad!(GPT パーティション テーブルを作成できませんでした)」とのことです。USBの差込口を変えたりSDカードリーダーを他の物にしても同様のエラーが発生し全く進みません。他のmicroSDカードに変えたら問題なく進みました。microSDカード、正常動作品ですが... もしかすると相性問題などあるのかもしれません。
Next steps のポップアップが表示されたらWindowsの書き込み完了です。Closeをクリックし、Windows を書き込んだストレージからブートします。

ブート&インストール
Windows を書き込んだストレージからブートします。このラズパイロゴから暫く(10-30分ほど)待機するとインストールが始まります。

なかやんがWindows 11を書き込んだ時は、このラズパイロゴで6時間以上待機しても全く変化ありませんでした。余りにも長すぎる時は恐らく失敗です。
インストールが始まります。こちらもストレージの性能によっても異なりますが、10~30分ほど時間がかかることがあります。気長に待機しましょう。

自動で再起動、いつものWindows のクルクルが出てきます。

後は通常のWindows 通りセットアップを進めれば問題ありません。

セットアップ完了、Windows のデスクトップ画面が表示されました。

初期状態では、キー配列が英語になっているため、日本語キーボードを使用中の場合は別途設定する必要があります。「設定 > 時刻と言語 > 言語 > 日本語 > オプション > レイアウトを変更する」から日本語キーボードへの切り替えが可能です。
また、ドライバの関係でWi-Fiは使用できません。インターネットに接続するには USBポートにアダプタを付けるか、有線での接続が必要です。
検証とアップデート
RaspberryPi 4 にインストールしたWindows 10 がどこまで使えるのか検証してみました。
アップデート
検証開始... の前にWindows アップデートを実行しました。

アップデート中のタスクマネージャーはこんな感じです。

意外とCPUは問題なさそうな感じですね。
検証
結論、意外と使えました。
数年前に試したときは、使い物にならないくらい重かった記憶がありますが、今回は意外と使えました(もしかするとドライバが以前より最適化されているのかもしれません)
Windows の標準機能(ペイントや電卓)は快適に使用可能、FireFoxでのネットサーフィンも若干ストレスが溜まる程度の速度ですが、RaspberryPi OS の時とそこまで変わらない感じがします。比較的重いサイトであるYouTubeも問題なく見れました。ただし、マルチタスクは少々厳し印象です。通常のPCのように、動画を見ながらネットサーフィンをしWindows Updateも... というのは厳しい感じです。イメージ的にはノートPC用の超低電量版Core2Duoが搭載されたPCを動かしている感じに近いですね。
ちなみに、ARM版Windows 10は、32bitのソフトも特に問題なく動作します(Windows 11 ARMでは64bit ソフトも動作するようです) 以前なかやんが作ったソフトも正常に動作しました。

以前は起動に かなりの時間必要でしたが、今回は約2分30秒で起動しました。(以前は起動まで5分程かかった記憶が...)
今日の所はここまで、今後色々と検証してみます。
では、おやすみなさいzzz