linux - Linuxカーネルを再コンパイルする必要はありますか?

原文 linux linux-kernel kernel-module

私はLinuxカーネルモジュールの開発を学ぶ初心者です。強制モジュールのアンロードなどのさまざまなデバッグ機能を有効にするために、カーネルを再コンパイルするように言うチュートリアルに従っています。よろしいですか?ビルド済みのカーネルに影響しますか?実行中のカーネルにモジュールを挿入する必要があり、カーネルがそれを許可しないのはどのような場合ですか?
答え
カーネルモジュールの開発を行うためにカーネルをコンパイルしてインストールすることは完全に問題ありません。 Ubuntuにいる場合は、次の手順に従って、起動したマシンと同じカーネルソースを使用していることを確認できます。

ステップ1. /boot/grub/grub.cfgファイルから、ブートに使用されているLinuxを見つけます。起動時に選択した起動オプションエントリで、「linux」というエントリを探します。
抜粋の例:linux /boot/vmlinuz-3.13.0-24-generic root = UUID = e377a464-92db-4c07-86a9-b151800630c0 ro quiet splash $ vt_handoff

手順2.次のコマンドを使用して、同じバージョンのパッケージの名前を探します。

dpkg -l | grep linux | grep 3.13.0-24-generic


出力例:

$ dpkg -l | grep linux | grep 3.13.0-24-generic
    ii  linux-headers-3.13.0-24-generic                       3.13.0-24.46                                                amd64        Linux kernel headers for version 3.13.0 on 64 bit x86 SMP
    ii  linux-image-3.13.0-24-generic                         3.13.0-24.46                                        amd64        Linux kernel image for version 3.13.0 on 64 bit x86 SMP
    ii  linux-image-extra-3.13.0-24-generic                   3.13.0-24.46                                        amd64        Linux kernel extra modules for version 3.13.0 on 64 bit x86 SMP


ステップ3.パッケージ「linux-headers-3.13.0-24-generic」のソースをダウンロードして、PCで使用されていたものと同じカーネルを入手します。

$ apt-get source linux-headers-3.13.0-24-generic


ステップ4. / boot /フォルダーにある構成ファイルを構成ファイルとして使用して、このカーネルソースをコンパイルする

例:
$ ls /boot/config-3.13.0-24-generic(このファイルで使用されているのと同じバージョンに注意してください)

ステップ5.この構成でデバッグシンボルをオンにして、テストを行います。
関連記事

linux - 誤って削除した後、hostsファイルを取り戻す方法[終了]

php - CentOSにPHP FileInfoモジュールをインストールする方法

python - 2番目のスクリプトが実行中か、すでに終了しているかを確認します

c++ - openmp parallelセクションのベンチマーク

linux - opensslのコンパイルが「/ usr / bin / ld:cannot find -lz」で失敗する

linux - シェルスクリプトを使用してディレクトリからUSBにファイルをコピーする

linux - git clone中に「httpsのリモートヘルパーが見つかりません」

linux - ディープパケットインスペクションを使用してサーバーを介してトレントトラフィックをブロックする[終了]

linux - バッファリングされていないbash出力

python - uv4l raspicamドライバーを使用したSimpleCVのセットアップ