すべてのRed HatとDebianベースのディストリビューションは、カーネル設定を提供する規則に従うと確信しています/boot/config-*
。しかし、他のディストリビューションはどうですか?または、この規則が非常に一般的な場合、いいえこれに従いますか?
答え1
Debianとその派生製品(Ubuntu、Linux Mintなど)
カーネル設定はに保存されます。どちらのファイルも同じパッケージにあります。/boot/vmlinuz-VERSION
/boot/config-VERSION
linux-VERSION
kernel-VERSION
Arch Linux、Gentoo(有効になっている場合)
実行中のカーネルの設定はカーネルバイナリに保存されますzcat /proc/config.gz
。
CONFIG_IKCONFIG
このファイルは、カーネルをコンパイルするときにこのオプションが設定されているときに存在するため、trueにすることができます。(または)デプロイメントに関係なく、指定された2つのデフォルトのカーネル構成で有効になります。
ところで、Arch Linuxのデフォルト設定ではカーネル名を指定しません(またはinitramfsイメージ)バージョン別またはファイル別のパッケージ/boot
にのみ名前が付けられます。たとえば、一般的なArch Linuxブートカーネルの名前は次のとおりです。/boot/vmlinuz-linux
Linuxデフォルトのカーネル用にインストールされたパッケージ。
答え2
Linuxカーネルのソースコードはインストールメカニズムに付属していますmake install
。これは/boot(vmlinuz-バージョン、system.map-バージョンと構成 -バージョン)。
実行中のカーネルの構成を有効にするオプション/proc/config.gz
もカーネルの一部です。もしこの設定オプションを有効にすると、ファイルは/proc
ファイルシステムに存在します。最近では、ほとんどすべてのディストリビューションでこの機能を有効にしており、Androidカーネルでもこれが最も標準的な場所です。
ただし、どの位置も分布に依存しません。多くのディストリビューションでは、この方法でパッケージを準備するのが便利なため、パッケージング時に「デフォルト」の場所を利用します。ただし、単一のディストリビューション内でも、非標準のカーネルパッケージはファイルを別の場所に配置したり、別の方法で名前を付けたりすることができます。 。