カーネルモジュールを適切にリロードするにはどうすればよいですか?


12

関連質問

新しいフラグを試すためのカーネルモジュールをリロードできません。
例:thinkpad_acpiデフォルトはなしfan_control=1です。コンピューターが非常に熱くなり、ファンがフルスピードにならない場合は、一時的にモジュールを一時的にロードfan_controlして数分間ファンを可能な最高速度に設定し、すべてを通常のあとに戻すのに役立つことがあります。
一部のカーネルモジュールが他のモジュールに依存しているようで、最近のLinuxカーネルがそれをチェックしているように見えるため、これは不可能です。
だから私はこれまでに何をしましたか:

  • 依存関係の確認
    • modinfo -F depends thinkpad_acpi
  • これらのモジュールをアンロードしてみてください
    • rmmod または modprobe -r $dependencies
    • 一部のモジュールは再び他のモジュールに依存しています。それらもアンロードしてみてください。「依存関係」がない場合でも機能しません(または少なくともmodinfoが教えてくれます)
  • グーグルのためにたくさん modprobe: FATAL: Module x is in use.
  • 読書TLDP

いつでもオプションを変更して再起動できます。より良い質問は、なぜあなたのコンピュータが熱くなるのかということです。
terdon

申し訳ありませんが、再起動は私がやりたくないことであり、CPUの負荷が速いか、蓋が閉じているか、コンピュータが外にあり、太陽が輝いているため、コンピュータが熱くなることがあります;)。
queryAllThings 2014年

もう1つのオプションは、ファンの速度を制御することです。関連するtthinkwikiページを見てください:thinkwiki.org/wiki/How_to_control_fan_speed
terdon

1
知っている!引用:ファン制御を有効にするには、モジュールパラメーターfan_control = 1をthinkpad-acpiに指定する必要があります。カーネルモジュールをリロードできるかどうか知りたいだけです。ワイヤレスをデバッグしている場合は、いくつかのモジュールを他のフラグで再ロードする必要もあります。
queryAllThings 2014年

snd_hda_intelの使い方がわからない$ sudo rmmod -f snd_hda_intel rmmod: ERROR: ../libkmod/libkmod-module.c:769 kmod_module_remove_module() could not remove 'snd_hda_intel': Resource temporarily unavailable rmmod: ERROR: could not remove module snd_hda_intel: Resource temporarily unavailable ::\
Tomislav Nakic-Alfirevic

回答:


4

力のアンロードが(カーネルで有効になっている場合zgrep FORCE_UNLOAD /proc/config.gzと言う=y)、あなたはできるrmmod -f力に問題のカーネルモジュールは、それをアンロードします。

これを可能にするパッチによると、これはカーネル開発者と絶望的な人々のためだけのものです。

最善の方法は、モジュールが使用されている理由とそのプロセスを把握することですが、少なくとも強制アンロードにより、モジュールを再度リロードできるようになります。


2
Debianではこれがデフォルトのようです。PS:Debian /proc/config.gzではにあり/boot/config-$(uname -r).gzます。
queryAllThings 2015年

そしてgrep FORCE_UNLOAD /boot/config-$(uname -r)Ubuntuで。
サバラバ2017
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.