[ubuntu-jp:493] Re: カーネルアップグレードで古いカーネルの取り扱い

hito hitoht at gmail.com
Mon Jun 18 02:38:46 BST 2007


> linux-image-2.6.20-16-genericとlinux-image-genericが混在していますが,古
> い方のlinux-image-genericは削除してもよろしいのでしょうか?
> それとも,両方のパッケージが必要なのでしょうか?

これは削除してはいけません。両方のパッケージの存在が前提です。

linux-image-generic は linux-image-<version>-generic にdependする
ことで、最新版を導入する機能を果たしています。これはlinux-image-<arch>
に共通した挙動です。

dpkg -L linux-image-genericで構成ファイルを表示してみると分かりますが、
以下のようなファイルしか入っていないパッケージです。
/usr
/usr/share
/usr/share/doc
/usr/share/doc/linux-image-<arch>
/usr/share/doc/linux-image-<arch>/copyright
/usr/share/doc/linux-image-<arch>/changelog.gz
※<arch>はgenericなり386なりlowlatencyなりになります。

しかし、肝心のLinux Kernel関連のファイルは、linux-image-genericが
linux-image-2.6.20-16-genericに依存することによりインストールされていて、
linux-image-2.6.20-16-genericの最新版が2.6.20-16.29という構造です。

なので、linux-image-genericのバージョンが2.6.20.16.28.1なのは
問題ありません。
このあたりの関係はaptitude show linux-image-genericとかすると分かります。

$ aptitude show linux-image-generic
Package: linux-image-generic
New: yes
State: not installed
Version: 2.6.20.16.28.1
Priority: optional
Section: base
Maintainer: Ubuntu Kernel Team <kernel-team at lists.ubuntu.com>
Uncompressed Size: 53.2k
Depends: linux-image-2.6.20-16-generic
Description: Generic Linux kernel image
 This package will always depend on the latest generic kernel image available.

そして、apt-cache show linux-image-<arch>すると、
(以下の出力は386のもの)

| You likely do not want to install this package directly. Instead, install
| the linux-386 meta-package, which will ensure that upgrades work
| correctly, and that supporting packages are also installed.

とかコワイことが書いてあるので、linux-image-<arch>を消すと次の
アップデート時に不幸な事故が起こりそうだ、というのが分かります。

なお、パッケージャの側で「これは要らない」という宣言をobsoleteフラグで
行ってもらえるので、パッケージマネージャ(Synaptic,aptitude,apt...)が
良きに計らってくれ、利用者の側で判断して消去、という作業は必要ない
ことがほとんどです。
# たまーにバグで手動削除が必要なこともあります。



More information about the ubuntu-jp mailing list