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


23

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

回答:


18

/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

参照資料


4
Debianベースのディストリビューションではそうですが、Arch Linuxなど他のディストリビューションではそうではないかもしれません。
アリシア

1
@ntrrgc-ArchLinuxについては確認できませんが、RedHat、Debian、Ubuntuについてはそうです。これら3つのディストリビューションは、* nixの世界のほとんどをカバーしています。誰かがArchLinuxディストリビューションを持っている場合、このアプローチを確認してください。
slm

4
私はArch Linuxを使用していますが、これがArch Linuxで機能しないことを確認できます。
アリシア

@slmは、Ubuntu、少なくともKubuntuには当てはまりません。確認したばかりです。私が持っているの/boot/grubディレクトリだけです。
ハイエンジェル

@slmはおそらくこれらの設定がいくつかのパッケージの一部ですか?次に、そのパッケージのファイルをリストするだけで十分です。
ハイエンジェル

13

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

zgrep CONFIG_PROC_EVENTS= /proc/config.gz

カーネルはでコンパイルされた場合CONFIG_IKCONFIG_PROC=y


6
これは、カーネルがCONFIG_IKCONFIG_PROCセットでコンパイルされている場合にのみ機能します。
ブルースエディガー

1
Debian、RedHatベース、Ubuntuのいずれのディストリビューションでも、これは機能しませんでした。これらはすべてストックシステムであるため、自分でカーネルを構築するか、特定のディストリビューションが提供しない限り、このアプローチはそれほど有用ではないと思います。
slm

1
ディストリビューションカーネルでは、IKCONFIGオプションはモジュールとしてのみ有効にできます。modprobe configs/proc/config.gzが表示されるかどうかを確認してください。
XZS

0

カーネルがでビルドされた場合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

sudo find / -xdev -name .config(-xdevは1つのファイルシステムに保持します)

一般的には /usr/src/some-specific-kernel-header-version/.config

テキストとして読むか、grepで検索するか、2つのバージョンの違いを確認してください diff -y -suppress-common-lines /path/linux2.6-r3/.config /path/linux2.6-r4/.config

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.