/

Proxmox VEにChromeOS Flexをインストールする

Proxmox
Proxmox VEでChromeOS Flexが動く

Proxmox VEにChromeOS Flexをインストールする方法です。

Proxmox VEとは何?とかProxmox VEをインストールしてない、という方は下記を参考にしてください。

ChromeOS Flexのインストール

今回使用したのはProxmox VE のversion7.4です。下記の説明はProxmox VEがPCにインストールされているという前提で進めています。

この説明に出てくる名称や決まりごとについて

  • ホストマシン: Proxmox VEが動いているPC
  • proxmoxの管理画面: ホストマシンの画面に表示されているIPで表示されるProxmox VEの管理画面 例: 192.168.240.1:8006
  • ホストマシンのターミナル: ホストマシンの画面で表示されているターミナル(SSHでログインしてもいい)
  • 作業ディレクトリ: ホストマシンの/root/chromeos
  • VM: VirtualMachine、バーチャルマシンに関する操作はproxmoxの管理画面で行う
  • マシン名: cromeos-machine

手順

  1. ホストマシンにログインしてダウンロード (ホストマシンのターミナル) ChromeOS Flex インストールガイドChromeOS Flex インストーラ イメージをホストマシンにダウンロードする

    # ログイン
    ## ホストマシンに直接か、もしくはSSHでログインする
    ## ユーザー名: root
    ## パスワード: proxmoxをインストールしたときに設定したパスワード
    
    # 作業用ディレクトリを作る
    $ cd ~
    $ mkdir chromeos
    $ cd chromeos
    
    # ダウンロード
    $ curl -Lo crosflex.zip https://dl.google.com/chromeos-flex/images/latest.bin.zip
    
  2. 解凍 (ホストマシンのターミナル)

    $ apt install unzip
    $ unzip cof.zip
    # chromeos_15393.58.0_reven_recovery_stable-channel_mp-v2.bin というような名前のbinファイルができる
    
  3. 不足しているパッケージのインストール (ホストマシンのターミナル)

    $ apt install libgl1 libegl1
    
  4. 空のVMを作る (proxmoxの管理画面) VMを作成ボタンより下記の設定で完了を押す

    全般:
      マシン名: cromeos-machine
    OS:
      メディアを使用しない
      ゲストOS種別: Linux
      バージョン: 6.x - 2.6 Kernel
    システム:
      グラフィックカード: VirGL GPU `$ apt install libgl1 libegl1`で使えるようになるはずだが起動などがうまく行かない場合はVirtualO-GPUで行けるが画面がちらつき遅い
      マシン: q35 インストール後はi440fxでも動く?
      BiOS: 既定(SealBIOS)
      SCSIコントローラ: VirtlO SCSI
    ディスク:
      ストレージ: Cephかローカルを指定
      キャッシュ: Write back(unsafe)
      ディスクサイズ: 32GBくらいあれば足りるはず
    CPU:
      コア: 4 2くらいでもいいとは思う
      種別: host
      CPUユニット: 1024
    メモリ: 8192 4096くらいでもいいとは思う
    
  5. binファイルをディスクとしてVM(chromeos-machine)に読み込み、EFIパーティションの追加 (ホストマシンのターミナル) qm importdisk は2~5分程度かかる

    # マシンid: 100 4.で作成した空VMのID
    # binファイル名: ./chromeos_15393.58.0_reven_recovery_stable-channel_mp-v2.bin
    # ストレージ: CephPool01 cephを使っていなければlocal-lvm
    $ qm importdisk 100 ./chromeos_15393.58.0_reven_recovery_stable-channel_mp-v2.bin CephPool01 --format raw
    
    # EFI パーティションの追加
    $ qm set 100 -efidisk0 CephPool01:1,format=raw,efitype=4m,pre-enrolled-keys=1
    
  6. BIOSをUEFIにする (proxmoxの管理画面) 追加したVM(cromeos-machine)のハードウェアに行くとEFIディスクが先ほどのコマンドの設定で追加されている。 BIOSをクリックして編集を押し、BIOSをOVMF(UEFI)にする。

  7. 空のディスクを読み込み、起動しインストール (proxmoxの管理画面)

    • VM(cromeos-machine)のハードウェア欄に未使用のディスク 0が表示されているのでクリック
    • 編集を押し、 キャッシュ: Write back(unsafe)で追加するとscsi1として追加される
    • VMのオプションブート順を押し、編集scsi1をトップに持って来てOK
    • VMを開始して、コンソールの画面を表示する
    • インストールが完了するとシャットダウンされる
    • VMが停止されるのを確認
      scsc1のブート順を1番にするとこんな感じ
      scsc1のブート順を1番にするとこんな感じ
  8. scsi1を分離し再度起動 (proxmoxの管理画面)

    • VM(cromeos-machine)のオプション > ブート順からscsi1を分離し、ブートにはscsi0のみがある状態にする。
    • VM(cromeos-machine)を開始

ハードウェアはこんな感じ
ハードウェアはこんな感じ

  1. ChromeOS FlexのログインにはGoogleアカウントが必要となるので用意しておく

おまけ

初期設定だとChromeOS Flexがスリープしてしまい、何もできなくなるのでスリープしないようにしておきます。 下記の設定を行ってください。 ChromeOS Flex上で 設定 > デバイス > 電源 > アイドル状態のとき 画面をオンのままにする

参考サイト/ページ