[ubuntu-jp:4308] MacBookAir5,2(13", Mid 2012) へUbuntu 12.10(64-bit)をインストールした際に発生する問題とワークアラウンド

小笠原祐太 yutaogasawara @ gmail.com
2013年 2月 17日 (日) 15:16:27 UTC


昨年末に購入したMacBookAirにUbuntuをOS X(10.8)・Windows 8と併用したかたちで利用しているのですが、
「kernelにアップデートがかかると、再起動後にWLANモジュールがネットワークマネージャーから認識されなくなる。」
と言う問題に悩まされていたのですが、
(根本的な原因は定かではないのですが)ワークアラウンド的な方法が導き出されたので、ご報告します。
ググると似たような方法を紹介しているブログがいくつか見つかるのですが、
どれも英語で日本語の情報が見当たらなかったので、一応。

1.原因
この現象は、
OSのインストール時に本来はインストールされねばならない
「linux-headers-generic」パッケージがインストールされない事に起因します。
私の環境(マルチブート、しかもEFIを使ってBOOTするようにインストールしている)特有の問題である可能性もあるのですが、
調べる過程でLaunchpadに似たような問題に遭遇した人々が大量にリポートをあげていたので、
64-bit版ではかなり再現性の高い現象かもしれません。

この検証は、インストール後の初回起動時に
「dpkg -l」コマンドを使用し、インストールされたパッケージの一覧を取得する事で行いました。
この際、同時にUbuntuソフトウェアセンターの履歴タブも確認しました。
すると、ソフトウェアセンターの履歴上では、「linux-headers-generic」がインストールされたという履歴が記録されていました。
根本原因の究明に役立つかもしれません。

2.なぜWLANモジュールが認識されなくなるのか?
私のMacBookAirには、Broadcom社製の「BCM43224」というWLANモジュールが搭載されており、
Ubuntuではプロプライエタリドライバである「bcmwl-kernel-source」をインストールし、動作しています。
このドライバは、kernelにアップデートがかかるとそれに組み込まれるかたちで自動ビルドされるのですが、
「linux-headers-generic」がインストールされていないためにlinux-headerがアップデートされず、
linux-imageとの間にバージョンの齟齬が発生し、ビルドに失敗します。
そのため、
実際にはkernelにドライバが組み込まれず動作しないが、
パッケージとしての「bcmwl-kernel-source」はインストールされているので、
「ソフトウェアソース」内の「追加のドライバ」タブにはちゃんと表示されるという謎の状態が作り出されます。

3.ワークアラウンド
これを回避する方法は簡単です。
「linux-headers-generic」をインストールするだけです。
再起動すればまたWLANモジュールが動作するようになります。


長くなってしまいましたが、同じような現象に遭遇した方の問題解決の一助になれば幸いです。
-------------- next part --------------
HTML$B$NE:IU%U%!%$%k$rJ]4I$7$^$7$?(B...
URL: <https://lists.ubuntu.com/archives/ubuntu-jp/attachments/20130218/7642aa64/attachment.html>


ubuntu-jp メーリングリストの案内