Ядро Linux является основным компонентом операционной системы Linux. Он управляет ресурсами системы и является мостом между аппаратным и программным обеспечением вашего компьютера.
Ядро Linux имеет модульную конструкцию. Модуль ядра, или его часто называют драйвером, — это фрагмент кода, расширяющий функциональные возможности ядра. Модули либо скомпилированы как загружаемые модули, либо встроены в ядро. Загружаемые модули могут быть загружены и выгружены в работающем ядре по запросу, без необходимости перезагрузки системы.
Обычно модули загружаются по требованию udev (диспетчер устройств). Тем не менее, иногда вам может понадобиться точно настроить загрузку модулей. Например, вам может потребоваться загрузить модуль с дополнительными параметрами или предотвратить автоматическую загрузку модуля.
Вы можете вручную загрузить модуль в ядро, используя команду modprobe, или автоматически во время загрузки, используя файлы /etc/modules или /etc/modules-load.d/*.conf.
В этой статье мы объясним, как использовать modprobe для добавления и удаления модулей из ядра Linux. modprobe является частью двоичного файла kmod, который реализует несколько программ, используемых для управления модулями ядра Linux.
Модули ядра хранятся в каталоге /lib/modules/<kernel_version>. Вы найдете версию работающего ядра, используйте команду uname -r.
Только пользователи с правами администратора могут управлять модулями ядра.
Чтобы загрузить модуль, вызовите команду modprobe, сопровождаемую именем модуля:
modprobe module_name
Команда modprobe загрузит данный модуль и любые дополнительные зависимости модуля. В командной строке можно указать только один модуль.
Используйте команду lsmod, чтобы подтвердить, что модуль загружен:
lsmod | grep module_name
Чтобы загрузить модуль с дополнительными параметрами, используйте синтаксис parameter=value:
modprobe module_name parameter=value
Команда принимает несколько параметров parameter=value, разделенных пробелом.
Как правило, вам нужно будет загрузить модуль во время загрузки системы. Вы можете сделать это, указав модуль и его параметры в файле внутри каталога /etc/modules-load.d. Файлы должны заканчиваться .conf и могут иметь любое имя:
option module_name parameter=value
Параметры, указанные в этих файлах, читаются пользователем udev, который загружает модули при запуске системы, используя modprobe.
Чтобы удалить модуль, вызовите команду modprobe с параметром -r, за которым следует имя модуля:
modprobe -r module_name
modprobe также удалит неиспользуемые зависимости модуля.
При вызове команда -r принимает несколько модулей в качестве аргументов:
modprobe -r module_name1 module_name2
Если вы хотите запретить загрузку модуля ядра во время загрузки, создайте файл .conf с любым именем внутри /etc/modprobe.d. Синтаксис:
blacklist module_name
Если вы хотите добавить в черный список дополнительные модули, укажите модули в новой строке или создайте новый файл .conf.
Команда modprobe позволяет добавлять и удалять модули ядра Linux.
Не стесняйтесь оставлять комментарии, если у вас есть какие-либо вопросы.
А в какое место можно положить скрипт? Задумка такая, имеется флешка с линуксом универсальная так сказать, вот хотелось бы скриптик, чтоб в зависимости от карты грузил нужный драйвер. Типа если AMD, то amdgpu, если Nvidia, то проприетарный от нвидии, nouveau вообще через одно место работает….
попробовал добавить модуль nvidia
рассчитывал что изменится хотя бы chmod для /dev/nvidia*
но он как тыл 666 так и остался.
проверял
смотрел в /vat/log/message