Hello.koという名前のカスタムでシンプルなモジュールを作成しました。コマンド "insmod hello.ko"を使用してモジュールをインストールし、 "dmesg"で確認すると機能しますが、システムを再起動すると、手動でロードする必要があります。では、カスタムモジュールを自動的にロードするにはどうすればよいですか?また、hello.koをどこに配置する必要がありますか?モジュールをロードした後、Enterキーを押すまでメッセージHello Worldを表示したいと思います。誰か助けてもらえますか?
この手法はUbuntu13.10では機能しませんでした。だから、何度か試行錯誤した後、私はこれに行き着きました:
カーネルモジュールをdriversディレクトリにコピーします。
$ Sudo cp mymodule.ko /lib/modules/$(uname -r)/kernel/drivers/
モジュールの単純な名前をファイル/ etc/modulesに追加します。ここに示すように、ファイルを編集するか、ファイルに追加することができます。
$ echo 'mymodule' | Sudo tee -a /etc/modules
モジュールの依存関係のリストを更新します。
$ Sudo depmod
コンピュータを再起動して出来上がり、うまくいきました。
モジュールを/ etc/modulesファイルに追加します。
次に、モジュールを/ lib/modules/kernelnameカタログに配置します。