Как настроить modprobe для поиска моего модуля?
Я пытаюсь загрузить модуль ядра для загрузки при загрузке.
Если я запустил insmod /path/to/module.ko
, он отлично работает. Но это нужно повторять каждый раз, когда я перезагружаюсь.
Если я запустил modprobe /path/to/module.ko
, он не сможет найти модуль.
Я знаю, что modprobe использует файл конфигурации, но я не могу заставить его загружать модуль даже после добавления /path/to/module.ko в/etc/modules.
Какова правильная конфигурация?
Ответы
Ответ 1
Вы можете сделать символическую ссылку вашего модуля на стандартный путь, поэтому depmod увидит его, и вы сможете загрузить его как любой другой модуль.
sudo ln -s /path/to/module.ko /lib/modules/`uname -r`
sudo depmod -a
sudo modprobe module
Если вы добавите имя модуля в /etc/modules, он будет загружен при каждом загрузке.
В любом случае, я считаю, что правильная конфигурация - это копирование модуля в стандартные пути.
Ответ 2
Я думаю, что ключ состоит в том, чтобы скопировать модуль на стандартные пути.
Как только это будет сделано, modprobe принимает только имя модуля, поэтому оставьте путь и расширение ".ko".
Ответ 3
Выполните следующие шаги:
- Скопировать hello.ko в /lib/modules/ 'uname-r'/misc/
- Добавить запись misc/hello.ko в /lib/modules/ 'uname-r'/modules.dep
- sudo depmod
- sudo modprobe привет
modprobe будет проверять файл modules.dep для любой зависимости.