2016-01-29頃のアップデート後にUbuntu 14.04がインターネットに接続できない問題の解決策
2016-01-29頃に行われたソフトウェアアップデートでUbuntu 14.04のソフトを更新してPCを再起動するとインターネットにつながらなくなってしまった。この問題の解決策を記す。
問題の確認
インターネットにつながらないことは以下の手順で確認できた。
[System Settings…]>[Network]または以下のコマンドでネットワーク設定を起動する。
unity-control-center network
以下のメッセージが表示されインターネットにつながらなくなってしまった。
The system network services are not compatible with this version.
解決策
この問題は以下のページで質疑応答があり、解決策も示されていた。
14.04 – Last upgrade crashes network manager (no internet connection, no applet) – Ask Ubuntu
ここのr2rienさんの回答により問題を解決できた。日本語での情報が少ないので、この回答を元に手順を説明していく。
直接的な原因としては、最新版のlibnlのバグによるものだ。したがって、64bitのUbuntuであれば以下の3パッケージをダウンロードしてlibnlを3.2.21にダウングレードすれば解決する。
- libnl-3-200_3.2.21-1_amd64.deb
- libnl-genl-3-200_3.2.21-1_amd64.deb
- libnl-route-3-200_3.2.21-1_amd64.deb
問題の起きたUbuntuだとインターネットに繋げられないので、別のPCでこれらのパッケージをダウンロードしてUSBメモリなどでネットを使わずにUbuntuに渡す。
上記ページでもこれらのパッケージを配布しているが、ダウンロードできなくなると困るので64bitパッケージを私のGoogle Driveでも公開しておく。
libnls-3-200_3.2.21.tar.gz – Google ドライブ
libnl*.debをダウンロードしたら、同じ場所で以下のコマンドを入力してインストールする。
sudo dpkg -i libnl-*.deb
最後に以下のコマンドでnetwork-managerを再起動すれば完了する。
sudo service network-manager restart
これでインターネットがつながるようになるはずだ。
根本原因
今回のlibnlの最新バージョンによる問題は、[Software & Updates]>[Updates]>[Pre-released updates]にがついていたために起こった。
[Pre-released updates]は不安定であり、バグが発生する可能性が高い。したがって、ここのチェックは外して[Pre-released updated]によるアップデートはしないほうがいい。また、更新が多いと不具合対応が面倒なので更新頻度も[Every two weeks]にするなど長めにしておくのがよいだろう。