概要
Pixelbook で LXC が動くようになり,喜んだのもつかの間,最新のアップデートで早速動かなくなった.具体的にはターミナルアプリ及び crosh というブラウザ内ターミナルを開いても,黒いブランク画面が表示されるだけでターミナルとして使えなくなってしまっていた.これについては皆困っているようで,Reddit 上でも議論1 2 になり,解決策が示されていた.(一応)解決できたのでここへまとめておくことにする.
解決策
Secure Shell App のインストール
まず Alt+Ctrl+t
で呼び出せる crosh を修復するために,Chrome Web Store から extension として Secure Shell App をインストールする.とりあえずこれで crosh は動く.
LXC Container の起動
crosh> vmc start termina
$ run_container.sh --container_name=penguin --user=tsubasa.azumagakito --shell
これでとりあえずコンテナ内のターミナルに入れる.tsubasa.azumagakito
の部分は Google Account の名前(@
の前の部分)に該当する.この run_container.sh は,中ではいろいろやっているが,最終的に
exec lxc exec "${FLAGS_container_name}" -- /bin/login -f "${FLAGS_user}"
をやっている.もし,uid 1000 関係のエラーが出たら以下のように一旦 termina をスタートし直すとうまく行く.
crosh> vmc stop termina
crosh> vmc destroy termina
crosh> vmc start termina
あとはそもそもブラウザ内ターミナルが激しく使いづらいので,下記のように hyper などを入れてみた(けど,shelf にピン止めできなくて困ってる).
$ curl -L https://releases.hyper.is/download/deb > hyper.deb
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- 0:00:01 --:--:-- 0
100 611 0 611 0 0 263 0 --:--:-- 0:00:02 --:--:-- 829
100 33.3M 100 33.3M 0 0 581k 0 0:00:58 0:00:58 --:--:-- 974k
$ sudo apt-get install ./hyper.deb
$ hyper
追記 201-05-23
linux app を shelf にピン留めする方法3
どうやら,launcher を起動して,terminal と検索してそれを shelf にまずピン留めする必要があったようだ.これを行っておくと,以降,apt-getでインストールしたアプリがなんとアプリケーションランチャーに表示されるようになる!!
インストールは gdebi を使うと良さそう4
hyper を入れたときにいまいち挙動が不安定だったが,なにか依存パッケージが足りていなかった説がある.以下のようにして導入すると安定した hyperterminal を手に入れることができた (ローカルにパッケージをダウンロードしてくるコマンドは前述しているので省いている)
.... と思ったらまだやっぱ挙動おかしかった まだまだだ.
$ sudo apt-get install gdebi # gdebi は普通に入れる
$ sudo gdebi ./hyper.deb # ローカルの deb パッケージを指定してインストール
Related Articles
- ChromeOSを開発マシンにするために知っておく基本的な3つのこと - Qiita
- ChromebookでVSCodeをネイティブに動かせるようになったので試した #Chromebook #Pixelbook #io18 #io18jp #VSCode #gdgtokyo - Qiita