Virtualbox上のUbuntuでChrome系ブラウザが真っ黒になる現象について

  • 7
    Like
  • 0
    Comment

もともとは記事作る気なかったので画像ないですすみません。

07/24修正追記

おそらくVirtualBox5.1.0以降、この方法は通用しなくなってしまっています。
ひょんなことからUbuntuを再構築したら解消不可能になり、びっくりしてTrisquelの方(こちらは当時から使い続けたもの)を確認したらこっちも死んでました。。
以下の対処法は、今では嘘です。

事態

virtualbox-guest-additionをインストールしてあるVirtualbox上のゲストubuntu系OS(ubuntu16.04, Trisquel7.0で確認)上において、Chrome系ブラウザ(Chromium, Opera, Vivaldiその他)がインストール直後の時点で真っ黒、またはその他壊れた表示になりブラウジングができない。
ホスト側はOS X El CapitanとWindows 10 Proで確認できたため無関係と思われる。

観察

ブラウザを端末から起動すると、マウスポインタの動きに連動してOpenGL関係のエラーがコンソールを埋め尽くす。
また、タイトルバーからして表示されないものの実はボタン等はすべてきちんと配置されており、×ボタンがあるだろう位置をクリックすると閉じることができる。

一時的対処

起動時に--disable-gpuオプションをつけてハードウェアアクセラレーションを無効にすると通常通り起動する。
しかし、この状態では表示がアバウト(一辺が数十pxの矩形範囲だけスクロールがずれたりする)な様子であまり好ましくない。
ゲストそのものを3Dグラフィックス支援無効で起動することでも同様。

原因

virtualbox-guest-additionのビルド時に必要なパッケージが一部不足していたためにグラフィックス支援が中途半端にしか機能してないのが原因 の模様。
現状、原因不明。

適切と思われる対処5.0.2x頃は機能した対処

Guest Addition CDイメージを改めて挿入し、端末からビルドをやり直す。
この時に画面上に出ているメッセージを真面目に読めば欠けているモジュールがわかる。
私のケースではdkmsが不足とあったため、

sudo apt install dkms virtualbox-guest-dkms

行うと解決された。
かつてはされましたが、今ではこれでは解決されません。

備考

Trisquel GNU/Linuxではvirtualbox-guest-dkmsがaptに無い(プロプライエタリ?)。この場合はdkmsだけ導入しておき、CDイメージからのビルドをやり直せば問題ない。
現在では何も変わりません。

参考

Dynamic Kernel Module Support - ArchWiki
Virtualbox - ArchWiki #ホストでカスタムカーネルを使っている場合