simotin13's message

simotin13といいます。記事の内容でご質問やご意見がありましたらお気軽にコメントしてください\^o^/

カーネルのコンフィグレーションを確認する方法

備忘録です。

Linuxディストリビューションを使っていて、現在のカーネルコンフィグレーションを確認したい場合いくつかやり方があるようです。

/boot/config-* を見る方法


cat /boot/config-4.10.0-38-generic

/proc/config.gz を見る方法


zcat /proc/config.gz

カーネルコンフィグレーションを確かめたくなるケース

組み込みLinuxの環境で、システムコールがエラーになり、errno を確かめてみると ENOSYS (38) "Function not implemented" が返ってきていました。
ENOSYSは文字通りシステムコールの機能が実装されていない場合に帰ってきます。実際には該当する機能が実装されていないのではなく、コンフィグレーションで無効化されていることが多いかと思います。その様な場合、コンフィグレーションの状態を確認する必要があります。

ディストリビューションや使用しているLinux環境によっては/boot以下にconfig-*のファイルが配置されていない場合もあるようなので/proc/config.gz を見るが確実なようです。