В отличие от прямого
insmod, она умна: автоматически подтягивает зависимости, ищет модули в стандартных путях и работает с алиасами.➡️ Модуль ядра — это кусок кода, который можно подключить к ядру на лету: драйверы устройств, файловые системы, сетевые протоколы, криптоалгоритмы. Благодаря модульной архитектуре ядро не таскает с собой всё подряд — нужное подгружается по требованию.
➡️ Где располагаются модули?
Все скомпилированные модули лежат в
/lib/modules/$(uname -r)/, разложенные по категориям (kernel/drivers/, kernel/fs/, kernel/net/ и т.д.). Имеют расширение .ko (kernel object).➡️ Основные команды
Посмотреть загруженные модули
lsmod
Загрузить модуль
sudo modprobe overlay
modprobe сам найдёт зависимости и подгрузит их.
Выгрузить модуль
sudo modprobe -r overlay
Информация о модуле
modinfo overlay
➡️ Как загружать модули при старте системы?
Разовая загрузка через modprobe живёт до ребута. Чтобы модуль подгружался автоматически — необходимо написать его в конфиг.
Создание файла со списком модулей (по одному на строку):
sudo nano /etc/modules-load.d/k8s.conf
Внутри конфига
br_netfilter
overlay
После ребута модули загрузятся автоматически.
Как заблокировать модуль (blacklist)?
Иногда нужно запретить автозагрузку — например, конфликтующий драйвер или дырявый протокол.
Создание файла блок-лист:
sudo nano /etc/modprobe.d/blacklist-custom.conf
Внутри конфига
# Отключение Bluetooth
blacklist btusb
blacklist bluetooth
После правки нужно пересобрать initramfs, если модуль грузится на ранней стадии:
sudo update-initramfs -u # Debian/Ubuntu
sudo dracut -f # RHEL/Fedora
modprobe — базовый инструмент, без которого не настроить ни Kubernetes-ноду, ни туннилирование, ни кастомные сетевые правила.
#линуксятина
