make localmodconfig
このコマンドは、まだ仕事のための適切なツールです。実際にmake localmodconfig
実行されscripts/kconfig/streamline_config.pl
ます。
ファイル入力
streamline_config.pl
(perl)ソースコードを読み取るときmy $lsmod_file = $ENV{'LSMOD'};
、lsmod
コマンドからの出力の代わりに、ロードされたモジュールの検出のためのファイル入力を許可する文書化されていない機能があります。
ライブCD
localmodconfigは出力lsmod
を使用してロードされたモジュールを検出するためです。さまざまなハードウェアセットアップのそれぞれでUbuntu Live CDを実行し、ターミナル(Ctrl+ Alt+ T)を開いて実行しlsmod
、その出力を保存します。
出力を連結する
lsmod
連続するヘッダー行を削除しながら出力ファイルを連結することにより、必要なすべてのカーネルモジュールをカバーする入力ファイルをすばやく作成できます。モジュールリストを手動で確認し、より手動のレシピを使用します。
$ cd linux-3.11.0/
または、makeコマンドを実行するディレクトリに移動します
$ lsmod > lsmod.txt
ロードされたモジュールを含むテキストファイルを作成します
$ nano lsmod.txt
nanoテキストエディターが開きます。もちろん、お気に入りのエディターアプリケーションを使用できます
まだ存在していない必要なモジュールをこのファイルの下部に追加し(例:このアンサーの下部を参照)、準備ができたら保存します。
注:タブではなくスペースを使用して、列集計の位置を一致させます。
$ make LSMOD="lsmod.txt" localmodconfig
これにより、localmodconfigがlsmod.txtファイルをロード済みモジュール検出の入力として使用するようになります
Steveline Rostedt(steamline_config.plの作者)に関して、ステップ5で短い表記を提案してくれました。
lsmod.txtに追加するものと追加しないものの例(ステップ4):
Intel D33217CKメインボードには、読み取りたいIntel温度センサーがあるため、次の行を追加します。
x86_pkg_temp_thermal 13810 0
intel_powerclamp 14239 0
しかし、このハードウェアで仮想マシンを実行したくないので、次の行をスキップします。
kvm_intel 128218 0
kvm 364766 1 kvm_intel
Apple(Broadcom)のGibabitイーサネットアダプターがThunderboltポートに接続されているため、以下を追加します。
tg3 152066 0
ptp 18156 1 tg3
pps_core 18546 1 ptp
ボリュームのミラーリングは必要ないと考えているため、以下を追加しないでください。
dm_mirror 21715 0
dm_region_hash 15984 1 dm_mirror
dm_log 18072 2 dm_region_hash,dm_mirror
また、グラフィックス出力も必要ないため(テキストはヘッドレスサーバーで実行されます)、次のものは含まれません。
i915 589697 3
i2c_algo_bit 13197 1 i915
drm_kms_helper 46867 1 i915
drm 242354 4 i915,drm_kms_helper
別のマシンでは、さらにこのRealtekイーサネットドライバーが必要です。
r8169 61434 0
mii 13654 1 r8169