Поиск по сайту:
Трудно выделить смысл из строк, но это единственная "монета" связи, на которую мы можем рассчитывать. (Алан.Дж.Перлис)

Команда Modprobe в Linux

16.06.2020
Команда Modprobe в Linux

Ядро 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 и могут иметь любое имя:

/etc/modules-load.d/module_name.conf
option module_name parameter=value

 

Читать  pip Uninstall / удаление пакета, установленного с помощью pip

Параметры, указанные в этих файлах, читаются пользователем udev, который загружает модули при запуске системы, используя modprobe.

 

Удаление модулей ядра

Чтобы удалить модуль, вызовите команду modprobe с параметром -r, за которым следует имя модуля:

modprobe -r module_name

 

modprobe также удалит неиспользуемые зависимости модуля.

При вызове команда -r принимает несколько модулей в качестве аргументов:

modprobe -r module_name1 module_name2

 

Если вы хотите запретить загрузку модуля ядра во время загрузки, создайте файл .conf с любым именем внутри /etc/modprobe.d. Синтаксис:

/etc/modprobe.d/blacklist.conf
blacklist module_name

Если вы хотите добавить в черный список дополнительные модули, укажите модули в новой строке или создайте новый файл .conf.

 

Вывод

Команда modprobe позволяет добавлять и удалять модули ядра Linux.

Не стесняйтесь оставлять комментарии, если у вас есть какие-либо вопросы.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
Поделиться в соц. сетях:


2 комментария на «“Команда Modprobe в Linux”»

  1. Denis:

    А в какое место можно положить скрипт? Задумка такая, имеется флешка с линуксом универсальная так сказать, вот хотелось бы скриптик, чтоб в зависимости от карты грузил нужный драйвер. Типа если AMD, то amdgpu, если Nvidia, то проприетарный от нвидии, nouveau вообще через одно место работает….

  2. Николай:

    попробовал добавить модуль nvidia

    # cat /etc/modprobe.d/nvidia.conf
    #!/bin/bash
    options nvidia \
            NVreg_DeviceFileGID=1226 \
            NVreg_DeviceFileMode=0660 \
            NVreg_DeviceFileUID=0 \
            NVreg_ModifyDeviceFiles=1
    

    рассчитывал что изменится хотя бы chmod для /dev/nvidia*
    но он как тыл 666 так и остался.

    проверял

    modprobe -c | grep nvidia
    blacklist nvidiafb
    options nvidia         NVreg_DeviceFileGID=1226         NVreg_DeviceFileMode=0660         NVreg_DeviceFileUID=0         NVreg_ModifyDeviceFiles=1
    softdep nvidia post: nvidia-uvm
    alias char_major_195_* nvidia
    alias mbp_nvidia_bl apple_bl
    alias pci:v000010DEd*sv*sd*bc03sc*i* nvidiafb
    alias pci:v000010DEd*sv*sd*bc03sc00i00* nvidia_drm
    alias pci:v000010DEd*sv*sd*bc03sc00i00* nvidia
    alias pci:v000010DEd*sv*sd*bc03sc02i00* nvidia_drm
    alias pci:v000010DEd*sv*sd*bc03sc02i00* nvidia
    alias symbol:nvKmsKapiGetFunctionsTable nvidia_modeset
    

    смотрел в /vat/log/message

    Dec 05 15:23:46 myhost kernel: nvidia: loading out-of-tree module taints kernel.
    Dec 05 15:23:46 myhost kernel: nvidia: module license 'NVIDIA' taints kernel.
    Dec 05 15:23:46 myhost kernel: nvidia: module license 'NVIDIA' taints kernel.
    Dec 05 15:23:46 myhost kernel: nvidia: module verification failed: signature and/or required key missing - tainting kernel
    Dec 05 15:23:46 myhost kernel: nvidia-nvlink: Nvlink Core is being initialized, major device number 238
    Dec 05 15:23:47 myhost kernel: nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms  460.27.04  Fri Dec 11 23:24:19 UTC 2020
    Dec 05 15:23:47 myhost kernel: [drm] [nvidia-drm] [GPU ID 0x00003300] Loading driver
    Dec 05 15:23:47 myhost kernel: [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:33:00.0 on minor 0
    Dec 05 15:23:47 myhost kernel: [drm] [nvidia-drm] [GPU ID 0x0000b200] Loading driver
    Dec 05 15:23:47 myhost kernel: [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:b2:00.0 on minor 1
    

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

**ссылки nofollow

Это может быть вам интересно


Рекомендуемое
Есть много блогов и видео на SEO. Но если вы сделаете…

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: