ECS LIVAにCentOS 7をインストールしようとがんばった結果

Pocket

[2015/12/10 追記] 以下の記事は、CentOS7の正規版についての調査結果です。やや無謀な方法を使えば、白LIVAにCentOS7をインストールすることは不可能ではありません。ご興味がおありの方は、こちらの記事をご覧ください。


結論から申し上げます。

すみません、ダメでしたorz

白LIVA購入から約半月、CentOS 7をインストールせんとああでもないこうでもないといろいろ調べたり試したり、挙げ句の果てには連日の夜なべ作業がたたって風邪引いてこじらせて「いい加減にしろ」と妻に叱られたり(苦笑)、まあいろいろあったんですが、ようやく人に説明できるだけの結論にたどり着いたので、ご報告する次第です。

まず、一番の難敵であり、数多くの人が挫折していたインストーラの起動ですが、これは簡単な「魔法の呪文」でクリアできることがわかりました。

具体的に説明しますと、

  1. GRUBのセレクトメニューで「Install CentOS」を選択し、「E」キーを押下。
  2. コマンドのエディットモードになるので、「linuxefi ~」の最後についている「quiet」を削除して、
  3. そのかわりに魔法の呪文「edd=skipmbr nolapic」を追記する。
  4. Ctrl-Xで起動。

以上で、するするっとインストーラが立ち上がります。

この魔法の呪文、確認してはいませんが、おそらく同じBayTrail-Mを使用したNUC(DN2820FYKH等)にも応用が利くと思われます。なぜかというと、こちらのスレを見る限り

Loaded X.509 cert ‘CentOS Linux kernel siging key <keyvalue>’

の部分で引っかかっているという点が共通しているからです(過去記事参照)。もし同様の症状で「CentOS 7がインストールできん」とお悩みのNUCユーザーの方がいらしたら、この呪文をぜひお試し下さい。

……いや、簡単に呪文とか言ってますけど、ここにたどり着くまでがえらい大変だったんですよ。詳しくは書きませんが、initrd.imgをバラしてソースをなめるところまでやる羽目になるとは思いませんでした(苦笑)。

それはさておき。

インストーラが立ち上がれば、あとは楽勝やんかー、と喜んだのもつかの間。今度はインストーラが内部ストレージのeMMCを認識してくれないという問題が発覚しました。CentOS 7のカーネルは3.10系。eMMC対応に必要とされるsdhci-acpiモジュールは3.8系から導入されていますから、多分大丈夫なんじゃないかなぁー、と楽観視していたのですが、残念ながらそうはいきませんでした。

最初は、必要なモジュール(mmc_core, mmc_block, sdhci, sdhci-acpi、以上4つ)がロードされていないからかと思ったんです。そこで、インストーラが立ち上がった直後にCtrl+Alt+F2でシェルに飛んでlsmodしてみました。すると、予想に反してsdhci-acpiその他はちゃんとロードされていました。あれ? じゃあ念のためにdmesgを確認すると、sdhci-acpiは動作しているものの、eMMCの認識に失敗している様子。あれれ?

そして私は長い旅に出ました。Ubuntu14.04では同じモジュールを使って苦も無く認識しているeMMCを、どうしてCentOSでは認識できないのか。何か理由があるはずだ、と。風邪っ引きの頭で思いつくありとあらゆるキーワードを使って検索しまくること3日。

そして行き着いた先は、LinusのGitでした(大苦笑)。

まず証拠その1カーネル3.11の時点で、BayTrailのGPIOに対応したドライバが新たに作成されたことを示しています。そして、証拠その2カーネル3.13の時点で、BayTrail M SoCに対応した新しいACPI IDがそのドライバに追加されたことを示しています。BayTrail M SoC、そう、まさにLIVAのユニットそのものです。

つまり、カーネル3.10の段階ではsdhci-acpiはBayTrailにすら未対応であり、同3.13でようやくBayTrail Mに対応することができた、というわけです。LIVAにインストール可能なUbuntu14.04のカーネルが3.13系であることを考えれば、辻褄が合います。

言い換えれば、カーネル3.13以降でなければLIVAのeMMCは認識されず、カーネル3.10系であるCentOS 7.0-1406をLIVAにインストールすることは不可能である、ということです。

……くやしい……(T_T)

半月悩んだ結果、得られた結論は以上です。ということは、カーネル3.13系のCentOSの登場を待たねばならないということになるのですが、カーネル2.6系を引きずりまくったバージョン6以前の状況を鑑みるに、あまり期待しない方が良さそうです。それとも、カーネルのマイナーバージョンアップの一環でこっそり対応してくれたりとかするのでしょうか。ま、こちらもあまり期待は出来なさそうですが。

CentOS 7は、この先BayTrailとは交わらない運命なのでしょうか。小型・省電力のファンレスPCをサーバ化するという利用法は、決して悪いものではないと思うのですが……今は、残念ながら諦める他なさそうです。

さて、こうして私の儚い野望は潰えたわけですが。残されたLIVAをどうしてくれようか、というのが喫緊の課題となっております。このままでは、Windows8.1の購入代金も合わせて「3万円の文鎮」(妻談)と化してしまいますので……(汗)。

とりあえず、Windows8.1をドライバまでちゃんとインストールして、ひととおり遊んでからSoftEtherを入れて即席VPNサーバにでもしてしまおうか、と現在画策中です。他にアイデアのある方、ぜひコメントをお寄せ下さい。それでは。

Pocket

ECS LIVAにCentOS 7をインストールしようとがんばった結果” への2件のフィードバック

  1. >匿名さん
    情報ありがとうございます。
    仮想環境にCentOS7をインストールして、カーネルを3.13にしてからそれをddで吸い出して、LIVAのメモリに書き込む、という方法ですね。
    うーん、ちょっとハードルが高いですけど、興味ありますね。時間ができたら試してみたいです。
    まあ、その前にCentOSのカーネルのバージョンが上がってくれるといいんですが……。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)