第3章 Debian カーネルパッケージ

目次

3.1. Source packages
3.2. アーキテクチャ非依存パッケージ
3.3. アーキテクチャ依存パッケージ

3.1. Source packages

The linux source package supports building of kernel images and headers for all currently supported architectures. The linux-latest source package supports building of meta-packages that depend on them. The linux-signed source package supports building of signed kernel images and modules for some architectures. Subsequent sections of this chapter document the naming and contents of the binary packages built from these source packages.

3.2. アーキテクチャ非依存パッケージ

linux-source-version

このパッケージには Debian カーネルソースの tarball が含まれています。ソースのパッチレベルは、パッケージの Debian リビジョンによって決定されます。例えば、4.2.5-1 というバージョンの linux-source-4.2 パッケージは、 パッチレベル 1 のパッチが適用されたバージョン 4.2.5 の Debian カーネルソースを含んでいます。パッケージがインストールされると、tarball 化されたソースが /usr/src/linux-source-version.tar.xz に配置され利用可能になります。

linux-manual-version

このパッケージにはカーネルの API を含めた関数へのマニュアルページが含まれています。これらは、/usr/share/man/man9/ にインストールされ、 標準の man コマンドで参照できます。ファイル名が衝突してしまうため、インストール可能な linux-manual パッケージは どれか 1 つに限定されます。

linux-doc-version

このパッケージは、上記以外のカーネル関連のドキュメントを様々なフォーマットで収録しています。/usr/share/doc/linux-doc-version にインストールされます。

linux-support-version-abiname

This package contains metadata from the linux source package that is needed to prepare and build the other source packages.

linux-headers-version-abiname-common[-featureset]

This package contains a common set of kernel headers for a particular featureset (or no featureset). Together with the flavour-specific linux-headers package it provides a full set of kernel headers, suitable for building of out-of-tree modules. This package should not normally be installed directly, but only as a dependency of the flavour-specific headers package (see below). It unpacks into the /usr/src/linux-headers-version-abiname-common[-featureset] directory. Before version 4.9 these packages were architecture-dependent.

3.3. アーキテクチャ依存パッケージ

あるカーネルパッケージを特定のハードウェア向けにデザインしたものは、アーキテクチャフィーチャセットフレーバで、一意に識別されます。全てのアーキテクチャ向けのカーネルは、2章Debian カーネルソース で説明されている手順で取得した、同一の Debian カーネルソースツリーからビルドされます。それぞれのアーキテクチャには普通、複数のフレーバのバイナリカーネルイメージがあります。異なるフレーバは同一のカーネルツリーからビルドされますが、バイナリイメージをビルドする際に使用されるカーネルの設定ファイルが異なります。

In order to build a working kernel with an extra featureset not provided by the upstream source, additional changes to the Debian kernel source are required. Again, multiple flavours of binary images may be built from the featureset tree. For example, the i386 architecture has a number of different flavours, such as 686 and 686-pae, built from the common Debian kernel source. It also contains the rt featureset. The source tree for building the kernels for each of these featuresets is obtained by applying additional patches to the Debian kernel source. It may be used to build the rt-686-pae binary image flavours. The names of the Debian binary packages incorporate the name of the flavour and, if necessary, the name of the featureset (there is no need to worry about the name of the architecture, since Debian tools will only allow installation of the packages with "correct" architecture). If the arch does not have any featuresets, the featureset part is omitted from the name, as indicated by the square brackets below.

パッケージ名には abiname が含まれます。これは、カーネルのバイナリ互換レベルを識別するための小さな整数です。abiname が異なるカーネルにはバイナリ互換性がありません。異なる abiname のカーネルにアップグレードする場合、サードパーティ製のバイナリモジュールを新しいカーネル用にコンパイルし直さなければならない可能性が高くなります。アーキテクチャ依存のパッケージのリストと簡単な説明を以下に示します。

linux-headers-version-abiname[-featureset]-flavour

このパッケージはフレーバ固有のヘッダファイルを提供します。これは対応する linux-headers-version-abiname-common[-featureset] パッケージに依存しており、シンボリックリンクをディレクトリツリー中に設定します。そうすることで、/usr/src/linux-headers-version-abiname[-featureset]-flavour がツリー外のモジュールをビルドするために必要なフルセットのヘッダーを持っているように見えます。さらに詳しく知りたい場合は、「ツリーの外にあるカーネルモジュールをビルドする」 を参照して下さい。現在実行中の公式カーネルに対応したカーネルヘッダの完全なセットは次のコマンドでインストールすることができます:

apt-get install linux-headers-$(uname -r)
linux-image[-featureset]-flavour
linux-headers[-featureset]-flavour

These meta-packages provide (via dependencies) the latest binary image and matching set of header files (respectively) for a particular flavour. Example: linux-image-rt-686-pae

linux-image-version-abiname[-featureset]-flavour

このパッケージには、特定の アーキテクチャ/フィーチャセット/フレーバ を組み合わせたバイナリ の kernel イメージとビルド済みのバイナリモジュールが含まれています。このパッケージによってインストールされたファイルの名前は、アーキテクチャに依存します。i386 アーキテクチャに必須のファイルは、典型的に以下のディレクトリに配置されています:

/boot/vmlinuz-version-abiname[-featureset]-flavour

バイナリ (圧縮された) kernel イメージです。

/boot/initrd.img-version-abiname[-featureset]-flavour

初期 RAM ファイルシステム (initramfs) イメージです。このファイルはインストール中に自動的に生成されたものです。パッケージの一部として提供されているものではないことに注意して下さい。 詳細は 7章起動用RAMイメージ (initramfs) アーカイブの管理 を参照して下さい。

/boot/config-version-abiname[-featureset]-flavour

この特定のカーネルをビルドするために使用されるカーネルの設定ファイルです。必要であれば、カーネルをソースから再構築するために利用できます。

/lib/modules/version-abiname[-featureset]-flavour/

ディレクトリには、ビルド済みのバイナリカーネルモジュールが含まれています。

linux-image-version-abiname[-featureset]-flavour-unsigned

This package contains the binary kernel image and pre-built binary modules for a particular arch/featureset/flavour combination, that are meant to be signed and copied into a package without the -unsigned suffix. There is normally no need to install these packages.

linux-libc-dev

このパッケージは GNU glibc や、その他のシステムライブラリなどのユーザ空間プログラムによって使用される Linux カーネルヘッダを提供します。