[コマンドラインに渡された]カーネルパラメータが有効なカーネルパラメータであるかどうかはどうすればわかりますか?

[コマンドラインに渡された]カーネルパラメータが有効なカーネルパラメータであるかどうかはどうすればわかりますか?

設定ファイルでgrub.confカーネルが使用するコマンドラインパラメータを指定できます。

kernel /boot/kernel-3-2-1-gentoo root=/dev/sda1 vga=791 plasticDuck

特定のカーネルを起動した後、すべてのパラメータが「正しく」渡されたかどうかを知る方法はありますか?

plasticDuckつまり、カーネルパラメータはありませんが、次のようになります。

dmesg | grep plasticDuck

次のみを返します。

Kernel command line: root=/dev/sda1 vga=791 plasticDuck

(エラーなし)

答え1

組み込みモジュールパラメータとその値を一覧表示するコマンドがないようです。ドライバファイルのパスがわかっている場合は、そのモジュールのパラメータを一覧表示できます。たとえば、カーネルのipv6.autoconf=0ブート引数として使用する場合は、次のように実行できます。

ls -1 /sys/module/ipv6/parameters/
autoconf
disable
disable_ipv6

その後、指定された引数がリストにある場合(つまり、有効な場合)、その値が検証されます。

cat /sys/module/ipv6/parameters/autoconf 
0

または特定のケースでは - atkbd:

cat /sys/bus/serio/drivers/atkbd/serio0/softraw
1

~によるとザイルズポスト、ロード可能モジュールの場合は、特定のパラメータと可能な値を一覧表示するために使用できますが、組み込みモジュールmodinfoでは機能しません(試しましたが)サポートを追加内蔵モジュールの場合):

modinfo ipv6
modinfo: ERROR: Module ipv6 not found.

答え2

パラメーターが有効かどうかは不明です。カーネルに渡された引数はモジュールにも渡されます(モジュール自体をロードするときに渡された引数に加えて)、まだロードされていないモジュールはこの引数を理解します。

このmodinfoコマンドは、モジュールが理解しているパラメーターをリストします。からロードされたモジュールのパラメータを表示できます/sys/module/$module_name/parameteres/。カーネル自体に似たものはありません。

答え3

/proc/cmdlineファイルにはカーネルに渡されたパラメーターが含まれています。

関連情報