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