Як я можу правильно завантажити модуль ядра?


12

Супутнє запитання

Не можу завантажити модуль ядра для спроби нових прапорів.
Приклад: thinkpad_acpiза замовчуванням немає fan_control=1. Тож якщо мій комп'ютер працює дуже гаряче, а вентилятори не працюють на повній швидкості, іноді може бути можливим просто тимчасове завантаження модуля fan_controlі встановлення вентилятора на кілька хвилин на максимальну можливу швидкість і змінити все на нормальні післямови.
Це неможливо, оскільки, здається, деякі модулі ядра залежать від інших, і здається, що сучасні ядра Linux це перевіряють.
Отже, що я робив поки що:

  • Перевірка залежностей
    • modinfo -F depends thinkpad_acpi
  • Спробуйте вивантажити ці модулі
    • rmmod або modprobe -r $dependencies
    • Деякі модулі знову залежать від інших, спробуйте їх також розвантажити. Не працює, навіть якщо немає "залежностей" (або принаймні modinfo мені це говорить)
  • Google багато для modprobe: FATAL: Module x is in use.
  • Читання tldp

Ви завжди можете змінити параметр і перезавантажити. Краще питання - чому ваш комп'ютер нагрівається.
тердон

Вибачте, перезавантаження - це саме те, чого я не хочу робити, і мій комп'ютер може нагрітися, оскільки завантаження процесора швидко, або кришка закрита, або комп'ютер зовні, і сонце світить;).
queryAllThings

Добре, іншим варіантом було б керувати швидкістю вентилятора. Перегляньте відповідну сторінку tthinkwiki
terdon

1
Я знаю! Цитата: Щоб увімкнути управління вентилятором, параметр модуля fan_control = 1 повинен бути заданий Thinkpad-acpi. Я просто хочу знати, чи можливо перезавантажити модуль ядра. Якщо я налагоджую бездротовий зв’язок, необхідно також перезавантажити деякі модулі іншими прапорами.
queryAllThings

Не знаєте, що робити з 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 \
Томіслав Накіч-Алфіревич

Відповіді:


4

Якщо в ядрі включено примусове завантаження ( zgrep FORCE_UNLOAD /proc/config.gzкаже =y), ви можете rmmod -fзадіяти проблемний модуль ядра, щоб змусити його вивантажити.

Згідно з патчем, який це дозволяє , це стосується лише розробників ядер та відчайдушних людей.

Найкраще, мабуть, з’ясувати, чому використовується модуль, і за допомогою якого процесу, але принаймні примусові розвантаження повинні зробити можливість повторного завантаження модуля.


2
Це, мабуть, Debian за замовчуванням. PS: On Debian /proc/config.gzзнаходиться під /boot/config-$(uname -r).gz.
queryAllThings

і grep FORCE_UNLOAD /boot/config-$(uname -r)на Ubuntu.
сабалаба
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.