Как установить сторонний модуль, чтобы он загружался при загрузке?

У меня есть сторонний модуль с фрейм-граббером. Я скачал исходный код ядра, следовал инструкциям вендора, чтобы скомпилировать его, и у меня есть получившийся модуль arvdrv.ko, который находится в папке.

Поставщик предоставил скрипт, который загружает модуль в ядро, и он работает, когда я его запускаю; модуль загружен, но только до следующей загрузки. Скрипт не использует modprobe. Я могу получить доступ к фрейм-грабберу, когда модуль установлен.

Мне кажется, что modprobe поддерживает список многих модулей. Можно изменить / etc / modules, чтобы добавить имя модуля, и он будет загружаться при загрузке, но модуль arvdrv отсутствует в списке modprobe.

Мой вопрос: как сообщить modprobe о модуле? Нужно ли его копировать в новое место, и если да, то куда?

24
задан 25 May 2013 в 01:21

1 ответ

Используя sudo:

  1. Отредактируйте файл /etc/modules и добавьте имя модуля (без расширения .ko) в отдельной строке. При загрузке ядро ​​попытается загрузить все модули, указанные в этом файле.

  2. Скопируйте модуль в подходящую папку в /lib/modules/`uname -r`/kernel/drivers. В моем случае это было /lib/modules/`uname -r`/kernel/drivers/pci. Это поместит модуль в базу данных modprobe. Я не знаю, может ли это быть ссылкой.

  3. Выполнить depmod. Это найдет все зависимости вашего модуля.

  4. В этот момент я перезагрузился и запустил lsmod | grep module-name, чтобы подтвердить, что модуль был загружен при загрузке.

См. Справочные страницы для modprobe , lsmod и depmod для получения дополнительной информации.

0
ответ дан 25 May 2013 в 01:21

Другие вопросы по тегам:

Похожие вопросы: