Ubuntu12.04のフリーズバグとlinuxカーネルのバージョンアップ
Ubuntu13.04出たし、かなり古い話題だけど、コマンド一発でカーネルバージョンアップができたのでメモ.
Ubuntu12.04でカーネルのバージョンが 3.2.0-40-generic-paeあたりだった場合、
特にブラウザ開いて動画視聴している最中に何の前触れもなくフリーズするバグが発生する.
その解決方法は、linuxカーネルのバージョンアップでしたという話.
フリーズの原因
発生した場合、マウスもキーボードも無反応で、電源落とす以外に復旧方法が何もないという恐ろしい状況に陥る*1.
再起動後にdmesgコマンドをたたくと、ERROR Power management discrepancyなどといういかにもなログがあったので、こいつで検索してみると、 同様の症状について、12.04 drm error in kern.logとかubuntu 12.04 completely freezes frequently. などで報告されていた.
正直詳しく読んでないので、結局カーネルのバグなのか、なんのかはわかりませんが...orz
なんせカーネルのバージョンアップを行うとフリーズしなくなるらしい.
linuxカーネルのバージョンアップ
カーネルのアップデートについては、How can I upgrade the Ubuntu 12.04.2 kernel to 3.5.0-23?などというド直球な質問があったのでこれを参考にカーネルをアップデートしてみる.
ちなみに、
$ sudo apt-get update $ sudo apt-get upgrade $ sudo apt-get linux-generic
としても、12.04にデフォルトで入っているlinuxカーネルのリビジョン(バージョン番号の3桁目以降?)が更新されるだけでカーネルのバージョンは上がらない*2.
例えば、quantalにカーネルイメージをバージョンアップするなら、
$ sudo apt-get update $ sudo apt-get upgrade $ sudo apt-get linux-generic-lts-quantal
としてrebootする.バージョンを確認すると、無事バージョンアップができたみたい.
$ uname -rv 3.5.0-43-generic #66~precise1-Ubuntu SMP Thu Oct 24 14:55:08 UTC 2013
お手軽.
Xもバージョンアップ
Xはlinuxのカーネルイメージに付いているパッケージ名に沿って配布されているようです.
For the new X stack:
sudo apt-get install xserver-xorg-lts-quantal
WARNING: If you are using the xorg-edgers PPA, do not install the xserver-xorg-lts-quantal package as this will most likely result in breakage.
Reference: https://launchpad.net/~xorg-edgers/+archive/ppa
This is only recommended for x86 hardware installations.
WARNINGに注意!
古いカーネルイメージの削除
せっかくなので古いカーネルイメージの削除方法も調べてみた.
(/boot の容量不足時) 不要なカーネル イメージを削除する (Ubuntu 13.04, Lubuntu 13.04)
もちろん、12.04でもできるので、削除.
$ dpkg --get-selections | grep linux-image $ sudo apt-get autoremove --purge linux-image-3.2.0-* ...... 以下のパッケージは「削除」されます: linux-generic-pae* linux-image-3.2.0-30-generic-pae* linux-image-3.2.0-53-generic-pae* linux-image-3.2.0-55-generic-pae* linux-image-3.2.0-56-generic-pae* linux-image-generic-pae* アップグレード: 0 個、新規インストール: 0 個、削除: 6 個、保留: 0 個。 この操作後に 454 MB のディスク容量が解放されます。 続行しますか [Y/n]? y ......
お手軽*3.
カーネルイメージいろいろ
quantalってなんじゃ?思ったので調べてみたらカーネルイメージのパッケージ名のようで、linux-image-generic パッケージがズラッとあってquantalは3.5.0.43.59のパッケージのようだ*4.
sudo apt-get install linux-genericでタブ2回叩いてみると、全部じゃないけどいくつかヒットした.
$ sudo apt-get install linux-generic linux-generic linux-generic-lts-raring linux-generic-lts-saucy-eol-upgrade linux-generic-lts-quantal linux-generic-lts-saucy linux-generic-pae
なんか、ひたすらURL張っただけの記事になってしまった.