web-dev-qa-db-ja.com

現在のカーネルビルドオプションはどこに保存されていますか?

カーネルが特定のオプションを有効にしてコンパイルされているかどうかを知る方法はありますか(つまりCONFIG_PROC_EVENTS=y)カーネルソースパッケージを引き出して構成ファイルを調べる必要なしに?

25
Alicia

あなたがあなたの/bootディレクトリには、次のファイルがあります。

$ ls -l /boot/|grep config
-rw-r--r--  1 root root   109919 Oct 21  2011 config-2.6.35.14-100.fc14.x86_64
-rw-r--r--  1 root root   109919 Oct 27  2011 config-2.6.35.14-103.fc14.x86_64
-rw-r--r--  1 root root   109919 Nov 23  2011 config-2.6.35.14-106.fc14.x86_64

使用しているカーネルのバージョンに注意してください。

$ uname -r
2.6.35.14-106.fc14.x86_64

grepを適切な「config -uname -r "ファイルには、カーネルが構築されたオプションが表示されます。

$ grep CONFIG_PROC_EVENTS= /boot/config-`uname -r`
CONFIG_PROC_EVENTS=y

参考文献

21
slm

カーネルオプションは/proc/config.gzにあります。

zgrep CONFIG_PROC_EVENTS= /proc/config.gz

カーネルがCONFIG_IKCONFIG_PROC=yでコンパイルされている場合。

15
Alicia

カーネルがCONFIG_IKCONFIG_PROCでビルドされている場合、/proc/config.gzにリストされている構成を見つけることができます

zless /proc/config.gz

DebianおよびRedhatベースのカーネルパッケージは通常、config-$version/bootファイルをインストールします。

less /boot/config-$(uname -r)

Debianでは、kernel-package./kernel/Config/configにもデフォルトオプションがあり、./kernel/Config/にはアーキテクチャ固有の設定オプションもあります。

mkdir /tmp/k
cd /tmp/k
apt-get source kernel-package
find . -path '*/kernel/Config/*' -type f
1
Evan Carroll