npm run huequica:dev

なんか長めのはなしとか

Chromebook(CloudReady)を開発機としてお使いの方々へ: アップデートは控えたほうがいい(2020/05/02 Sat Init)

tl;dr

  • 現状のDev Channel v81はVM周りにでかいバグが混入している可能性が高い
  • いつ改善されるかも不明
  • 現状として通常通り扱えるバージョンは v80.3
  • アプデしてしまった場合、Linuxコンテナが起動するならバックアップを早急に取る
    • 起動しない場合はもう諦めてアップデートによる改善を待つのが吉

なにがあった?

現在のChromiumOSのDev Channels Latest Release( v81.1.0 を指す)にて,Linuxが動かないバグが存在する.
厳密には Linuxコンテナ(Debianなど)を動かすためのVMの動作に関わるバグ が入っていると見ている

ちなみにCloudReady(汎用ChromiumOSディストリビューション)のコミュニティではすでに報告が上がっている neverware.zendesk.com

どういうこと?

ChromiumOSにおけるLinuxの動作はVM上のコンテナによる仮想領域を通しての起動なのだが
そのあたりのコンポーネント郡(VMなど)を crostini と呼称している.

今回問題になっているのはLinuxコンポーネント郡をインストールする際にデフォルトで装備されている termina というVMコンポーネント.
以下に実際の操作を示す

[Pro Tip] Use 'Open as Window' or 'Fullscreen' to prevent Ctrl-W from closing your terminal!
[Pro Tip] See [crosh] for more information.

Loading extra module: /usr/share/crosh/extra.d/30-neverware.sh
Loading extra module: /usr/share/crosh/dev.d/50-crosh.sh
Welcome to crosh, the Chrome OS developer shell.

If you got here by mistake, don't panic!  Just close this tab and carry on.

Type 'help' for a list of commands.

If you want to customize the look/behavior, you can use the options page.
Load it by using the Ctrl+Shift+P keyboard shortcut.

crosh> 

これはDev channelにしている場合のみ出てくるcroshというやつで,crostiniをいじいじするときに使用するインターフェース
こいつでVMの状況を見てみる

crosh> vsh termina
[ERROR:vsh.cc(101)] Failed to get VM info for termina
crosh> 

vsh termina で本来であれば入れるはずだが入れない.
これは単純にVMが起動していない際に表示されるエラーメッセージであるとのこと. Source
ではVMを起動しに行く

crosh> vmc start termina
Error: routine at frontends/vmc.rs:151 `vm_start(vm_name,user_id_hash,features)` failed: bad VM status: `VM_STATUS_FAILURE`: Failed to disable SMT
crosh> 

さて本来ならVMbashに入れるはずだがエラーが出てしまった
vmc list を見る限りはtermina は起動している?ぽいが… またこのエラーについてreddit(r/crostini)で検索する限り見つからないので
おそらくバグであるという認識で間違いないと思われる

なので焦ってvmc destroy terminaなどするものではないと考える
(俺はもうさっきやっちまった. おしめえだ)

対策(と呼べるものではない)

起動しない場合

  • 諦めてv80.1をDLしてインストールし直す
  • コンテナ状態そのままでアップデートを待つ

進展があった場合はこの記事で追記する