開発版の情報です。アップデートによりこの情報が古くなる可能性があります。
Chromebook などの専用デバイスではなく、通常の PC にインストールでき Chrome OS のほとんどの機能が利用できる Chrome OS Flex がリリースされました。
ただし、Chrome OS Flex は USB ライブブートで一時的に試せますが、アップデートなどはできず、インストールするとなると既存の OS が消えるため専用の PC が必要となります。
一時的な調査やテストを目的とした場合にのみライブブートを使用し、それ以外の場合はインストールして Chrome OS Flex を最大限に活用することを強くおすすめします。
Chrome OS Flex をインストールすると、対象デバイス上にある既存のデータ、アプリケーション、設定、OS がすべて消去されます。インストールに成功しなかった場合でも、失われたデータは復元できません。
3: Chrome OS Flex の使用を開始する – Chrome OS Flex ヘルプ
仮想化について
Chrome OS Flex の前身となる「CloudReady」は VMware で動作する OVA イメージが提供されていました。
ただ、Chrome OS Flex では VMware をサポートしておらず、Dev チャンネルのままだと自動的に Chrome OS Flex にアップデートされ起動しなくなってしまいます。
QEMU の選定
Twitter で KVM で動作したという事例がありました。
手元の環境には残念ながら KVM ホストはなく、Windows → Linux → Chrome OS Flex の Nested しか用意できないため、Windows で QEMU を動かしてみる方向を考えてみます。
Windows 版 QEMU の準備
まずは下記を準備します。
- QEMU for Windows – Installers (64 bit) より、QEMU 7.0.0 のインストール
- intel/haxm: Intel® Hardware Accelerated Execution Manager (Intel® HAXM) より、HAXM 7.7.1 のインストール
Hyper-V や WSL2、Windows Sandbox を使用している方は HAXM は利用できないかと思います。
自分はメインの仮想環境が VMware、VirtualBox のため、WSL 1 を使用しているのでこの構成となります。
qemu のオプションで -accel hax
の代わりに、-accel whpx
を指定するとよいようですが、試せていません。
QEMU で Chrome OS Flex の準備
まずは、Chrome OS Flex のイメージを用意する必要があります。
ヘルプによると「Linux で Chrome OS Flex の USB インストーラを作成するにはどうすればよいですか?(近日提供予定)」とありますが、現時点は手動で用意します。
正規の手順で作成した USB メモリをイメージ化する方法もありますが、今回はこのページの手順を参考にイメージファイルを入手しました。
5/1 時点で、拡張機能で参照している JSON ファイルが cloudready_recovery.json
から cloudready_recovery2.json
にアップデートされており、バージョンは 14685.0.0
でした。
QEMU で Chrome OS Flex の起動
ZIP ファイルを解凍して、QEMU を実行します。
いろいろ試行錯誤した結果、下記コマンドで正常動作を確認しました。
"C:\Program Files\qemu\qemu-system-x86_64.exe" ^
-accel hax -machine q35 -m 4096 ^
-cpu Skylake-Client-noTSX-IBRS -smp cpus=1,cores=3,maxcpus=3 ^
-vga virtio -display gtk,show-cursor=on -rtc base=utc ^
-device intel-iommu -usb -device usb-tablet -k jp106 ^
-hda "ダウンロードしたイメージファイル"
それぞれのオプションの意味は下記となります。
-accel hax
:HAXM を使用するオプションです-cpu Skylake-Client-noTSX-IBRS
:ホストの CPU が Core i5 6400 のため Skylake を指定しています-smp cpus=1,cores=3,maxcpus=3
:ホストの CPU が4コアのため、3コア分をゲストに割り振ります-vga virtio
:他のものだと画面が正常に表示されませんでした-display gtk
:Machine メニューからいろいろ操作するにはこれの方が良さそうです-usb -device usb-tablet
:通常のマウスの設定だとカーソルが飛んで操作が難しいです、タブレットモードに設定することで操作できました。ただタブレットなのでスクロールなどはタッチするように操作します。show-cursor=on
:タブレットだとカーソルがないので操作が難しくこれを設定することで操作できます-rtc base=utc
:これを設定することでゲストに正常に時刻設定されます
動作時のスクリーンショットは下記となります。
まとめ
QEMU for Windows(qemu-system-x86_64.exe) で正常に Chrome OS Flex が動作することを確認しました。
この方法でも、「とりあえず動作する」レベルでまともには動作しません。
あくまで動作検証のみの利用となります。
本物の KVM 環境ではもっとまともに動いてくれそうな気がしますが、VMware や VirtualBox などでも動いてほしいものです。