現在実行中の Linux システムからカーネルの設定を取得しますか?

kernel linux

Linux でカーネル設定用の .config を誤って削除してしまったのですが、どうやら proc ファイルシステム経由でカーネル設定を取得する方法があったようです

これはまだ可能なのでしょうか、もし可能ならばどのようにすればいいのでしょうか?

  133  Sonny Ordell  2011-05-23


ベストアンサー

お使いのシステムにもよりますが、この中のどれかに入っています

  1. /proc/config.gz
  2. /boot/config
  3. /boot/config-$(uname -r)

と、もしかしたらもっと多くの場所があるかもしれません

132  new123456  2011-05-23


実際に動作しているカーネルの場合、この設定ファイルを取得する方法の一つは以下の通りです

cat /proc/config.gz | gunzip > running.config

or,

zcat /proc/config.gz > running.config

すると、running.configには実行中のlinuxカーネルの設定が含まれます

しかし、これは実行中の linux カーネルが /proc/config.gz を持つように設定されている場合にのみ可能です。このための設定は

  • General setup
    • [*] カーネルの .config をサポートします
      • [*] /proc/config.gzからの.configへのアクセスを有効にします

ほとんどのディストリビューションはこの設定を持っていません。ほとんどのディストリビューションでは、カーネルパッケージの中にカーネル設定ファイルを提供しており、通常は /boot/ ディレクトリにあります

66  Jarl  2013-01-18


少し遅れましたが、誰かの役に立てるかもしれません。私のコンピュータには/proc/config.gz/boot/config/boot/config-$(uname -r)もありませんでした。私はmodprobe configsをrootで実行しなければなりませんでした。すると、/proc/config.gzが存在していました

42  Thomas Sparber  2015-12-11


boot/ にも /proc/config.gz にもカーネルの設定が見つからなかった場合は、カーネル自体から情報を抽出してみてください

カーネルのソースコードの中には、scripts/extract-ikconfigにある設定を抽出するスクリプトがあります

この解決策は、コンパイルされたカーネルで Kernel .config support が有効になっている場合にのみ動作します

10  Ramast  2016-09-23


ディストリビューションとは独立して、実行することができます。cat /lib/modules/$(uname -r)/build/.config

出典は以下の通りです。https://linux.die.net/man/5/proc/proc/configを検索)

8  jgomo3  2018-12-28


RedHat ベースのディストリビューションの場合、既製カーネルの .config ファイルは、コマンドを使って kernel-devel パッケージをインストールした後に利用できる cat /lib/modules/$(uname -r)/build/.config コマンドで見つけることができます

yum -y install kernel-devel

実際の Red Hat Enterprise Linux ディストリビューションでは、このパッケージを取得するためにソースリポジトリを有効にする必要があることに注意してください。RHEL8 では、以下のコマンドを使用してこれを行います

subscription-manager repos --enable=rhel-8-for-x86_64-baseos-source-rpms

1  Gertjan Bijl  2019-09-15


提案されているファイルが見つからず、modprobeが可能な場合は、ほとんどの場合、この方法で現在の設定のコピーを取得できるはずです

modprobe configs # might need `sudo modprobe configs`

# This will create /proc/config.gz
zcat /proc/config.gz

# Or if you are looking for whether a specific option was set
zgrep USBIP /proc/config.gz

0  dragon788  2020-05-22


タイトルとURLをコピーしました