Linuxのカーネルの情報参照

Linuxカーネルの情報の確認方法について解説する。


バージョンの確認

Linuxカーネルのバージョンは、バザール方式と呼ばれる特殊な開発手法であるため、その扱い方に若干の癖がある。
カーネルを管理する際には、十分なテストが行われ安定して動作することを保証するものと、実験段階などにより安定していないものを区別する必要がある。

現在(2009年10月時点)は、「A.B.CD」と表記する。
Aは、メジャーバージョン番号と呼ばれ、コード全体が前バージョンとは全く異なる新しいものによって構成された場合に増加する。現在の2.0は、1996年5月に公開された。
Bは、マイナーバージョン番号と呼ばれ、かつてはコードが安定版か開発版かを判断するのに用いた。この番号が偶数の場合は安定版カーネル、奇数の場合は開発版カーネルとすることで区別し、Cではそれらのリビジョン番号として修正が入る都度増加するようになっていた。
しかし、2.6からコード数の増大によりこの法則は崩れた。2.6.11以降より、Dの4番目のリビジョン番号を持たせることで対処している。
Dが「.数字」の場合、安定版を表している。この数字は公開される都度増加する。
Dが「-rc数字」の場合、リリース候補と呼ばれ、次回の安定版の候補である事を表している。
Dが「-git数字」の場合、実験的なリリースであることを表し、試験的に機能を実装している事を表している。

カーネルに含まれる機能はバージョンによって判断が可能である。
これを確認するには、以下の3つの方法がある。

unameコマンド

unameコマンドは「Unix Name」の略であり、実行中のOSの名称やバージョン、ハードウェアアーキテクチャ等の情報を出力する。
名称の通り、UNIX専用のプログラムであるが、Linux上でも動作しており移植性は高い。

# uname -r
2.6.23.17-88.fc7

実行結果から、このカーネルはリリース候補であることが理解できる。

/proc/version

/procファイルシステムは本来、プロセスに対する操作をファイルという抽象的なインタフェースに操作するためのものであった。
現在は、物理的なファイルやデバイスに見えないようなものを、ファイルとして抽象化する領域として用いられている。
ここに置かれたversionファイルを参照することで、動作中のカーネルのバージョンを確認できる。

# cat /proc/version
Linux version 2.6.23.17-88.fc7 (mockbuild@xenbuilder2.fedora.redhat.com) (gcc version 4.1.2 20070925 (Red Hat 4.1.2-27)) #1 SMP Thu May 15 00:35:10 EDT 2008

カーネルソースコードのMakefile

カーネルを一からコンパイルして利用している場合は、ソースコードが存在するため、これをチェックすることで確認が可能である。
Makefileにはコンフィギュレーションを設定するため、これを直接参照する。

# head -4 /usr/src/linux/Makefile
VERSION = 2
PATCHLEVEL = 6
SUBLEVEL = 23
EXTRAVERSION = .17-88.fc7

  • 最終更新:2009-12-08 20:44:22

このWIKIを編集するにはパスワード入力が必要です

認証パスワード