Thursday, February 4, 2016 / NUC, Ubuntu

Ubuntu 15.10 を BRIX GB-BSi7H-6500 にインストール(i8042 No controller found エラーの解消顛末)

BRIX GB-BSi7H-6500 に Ubuntu をインストールしようとしてはまったのでメモ。

諸事情により Ubuntu 14.04 / Ubuntu 15.10 をインストールしてみました。 いずれも USBメモリからのインストールです。

基本のインストール手順はこちら

  • http://www.ubuntu.com/download/desktop/create-a-usb-stick-on-ubuntu

Ubuntu 14.04 LTS

はじめに Ubuntu 14.04 LTS をインストールした。 インストール自体は問題ない。ただし、内蔵の Wifi カードが使用出来なかった。

GB-BSi7H-6500 に搭載のWifiカードは Intel® Dual Band Wireless-AC 3165 のようです。 http://www.gigabyte.jp/products/product-page.aspx?pid=5689#sp

カーネルがある一定以上新しいものでないと認識しない、および Ubuntu 14.04 のカーネルをその新しいカーネルにするのが大変そうだったので(詳しくは調べてません)、14.04 使用はあきらめ この Wifiカードの作動報告のあった 15.10 を使うことにした。

Ubuntu 15.10

通常の手順(Ubuntu上で、Startup Disk Creatorを使ってインストール用USBを作成)で USBブートを試みるが、マシン電源投入してすぐに i8042 No controller found とだけディスプレイに表示され、そこで止まってしまう。

i8042 No controller found でググってみると、GRUB のオプションに nomodeset を渡すとか、i8042.nomux=1 を渡すとか出ていて試したが、効果がなかった。

結論から先に書くと、GB-BSi7H-6500 と Ubuntu 15.10 の場合は、**intel_pstate=disable** を指定するとうまくインストールに進むことができた。

intel_pstate が問題と突き止める

USBメモリからインストールするときの GRUB オプションで、 quiet splash と指定されているところを nosplash にすると起動中のログがディスプレイに表示されるようになる。そのオプションで起動すると、その中に i8042 No controller found も出力されるのだが、そこで止まるわけではなく、さらにメッセージは続いていく。結局以下の行で止まった。

intel pstate HWP enabled

intel pstate でググってみると Ubuntu 14.04 ではこのオプションはデフォルトで無効化されている、という情報があったので、もしかすると Ubuntu 15.10 ではこれがデフォルトで有効になっており、その結果、問題が生じているのではないか?と思い、無効にするオプションを調べると intel_pstate=disable を指定すればいい、とのこと。

Intel pstate が無効だと、何か困ることがあるのかな?

GRUBのオプション設定方法

Ubuntu 15.10 のインストール用USBメモリから起動したら ESCキーと左SHIFTキーを連打します。 (実際は ESCキーか左SHIFTキーかどちらかだけ連打すればいいのだと思いますが、そのGRUBオプションの指定画面に入るためには、どっちかのキーを適切なタイミングで押せばよいと書いてあったので。)

GRUB画面が表示されたら指示にしたがって e を押してGRUBオプションの編集画面に入ります。そこで、 quiet splash と書かれた部分を intel_pstate=disable nosplash に書き替えます。(単に intel_pstate=disable を追記するだけでも構いませんが...)あとは F10 で保存して Ubuntu を通常通りインストールするだけです。

インストール後の対処

インストール時に行った GRUBオプション指定は、インストール後の再起動時まで維持されません。そこで、Ubuntuインストールが完了したあとの再起動のときにも、(面倒ですが)再度 この手順(ESCかSHIFTを連打するなどのそれ)で、 intel_pstate=disable を手動で指定する必要があります。

起動のたびにこの手順を行うのは御免なので、Ubuntu 15.10が起動できたら /etc/default/grub のしかるべき場所に intel_pstate=disable を追記し、 update-grub コマンドで反映します。こうすれば、次に再起動したときにもこのオプションは有効になります。

その他補足情報

BIOS設定

BIOSの設定も変えたので参考に書いておきます。

  • storage の設定を legacy から EUFI へ 変更
  • OS を windows7 から windows10/8.1 へ 変更
  • boot で USBメモリを最優先へ変更

storage の設定は Ubuntu インストール前に行うべきです。 legacy / EUFI どちらの設定でもインストールはできますが、たとえば legacy に設定しておいてインストールしその後に EUFI にかえると、インストールしたSSD(とかHDD)は認識されなくなります。(たぶん)

Wifi

Ubuntu 14.04 では使えなかった 内蔵のWifi ですが、 15.10 では問題なく使えます。

Ubuntu 15.10 と Skylake と サスペンド

事前の調査で、Skylake と ACPI 回りで問題があるとの情報があったので、心配していましたが、現時点では普通にサスペンドできています。詳しくは調べていないので、内部ではエラーがあるのかも知れませんが、Desktop用途として通常使用でのサスペンド問題は今のところ(表面上は)感じません。

以上、i8042 No controller found エラーの人の参考になれば幸いです。