Google Chrome / no sandbox病の改善
いつからかは分からないが、あるとき気づくとThinkPad / Windows7 pro 64bitのGoogle Chromeがまともに動かなくなっていた。
具体的な症状は
- Google Chrome起動は可能
- ページを開くとクルクルのまま白ページからなにも表示されない
- 他のマシン上ではとくに問題がない
- 現象発生マシンで他のブラウザ(IE)を使用する場合は問題が出ない
- 拡張機能は動いてる。拡張機能を全部つぶしても現象は発生
とりあえず起動オプションとして
--no-sandbox
を与えるとページのレンダリングがされるようになったものの起動するたびに文句バーが表示されるし、セキュリティ的にも気持ち悪い。
なので、いちから現象発生条件の切り分け開始
- Windowsを再インストールすると一時的に回復する。
- Windows UpdateでPatchをひと通り当てて最新にするとまた動作しなくなる。
- LenovoのSystem Update系列で導入したものは悪さをしていないようだ。
以上よりPatchのどれかが悪いということまで絞り込めたので「Windows Update」と「システムの回復」を駆使し絞り込んでいったところ、USB接続の外部ディスプレイのドライバを組み込んだ時点からGoogle Chromeがページのレンダリングをしてくれなくなることが判明。
ドライバ自体はDisplay Linkのやつが組み込まれるので、そっち方面を辿って行くと
Display Linkのサポート情報に下記が載っていた。
http://www.displaylink.com/support/ticket.php?id=339
結論
- Google Chromeを起動するマシンで、Display Link製のUSB接続ディスプレイドライバを導入しているとページが表示されない。
- 起動オプションに--no-sandboxを付けるとページは表示されるようになる。
- 起動オプションに -reduce-gpu-sandbox を足しても回避できる。
- 根本解決はGoogleの対策待ち。修正されるのかどうかわからないけど。