Ядро Linux - это не монолит, в котором всё скомпилировано раз и навсегда. Оно устроено куда гибче. Большинство драйверов, подсистем и расширений — это загружаемые модули ядра (kernel modules), которые можно подключать и отключать "на лету", без перезагрузки системы.
🌟 Что такое модуль ядра?
Модуль ядра - это объектный файл (.ko), содержащий часть функциональности, которая может быть подключена к ядру динамически. Это может быть драйвер оборудования, файловая система, сетевая функциональность и даже механизмы безопасности (например, AppArmor или SELinux).
▪️ Как посмотреть, какие модули загружены?
lsmod
Эта команда выведет список активных модулей, сколько раз они используются и какими другими модулями зависят.
▪️ Как загрузить модуль вручную?
modprobe имя_модуля
Если вы знаете, какой драйвер нужен (например, vfat для FAT-файловых систем), вы можете подгрузить его в ядро прямо во время работы.
▪️ Как выгрузить ненужный модуль?
modprobe -r имя_модуля
Не все модули можно выгрузить - если они заняты (используются другими модулями или активными процессами), команда завершится ошибкой.
▪️ Где лежат модули?
Обычно они находятся в
/lib/modules/$(uname -r)/kernel/Можно искать по названию:
find /lib/modules/$(uname -r) -type f -name '*имя*'
▪️ Почему это важно?
Модули ядра напрямую влияют на:
производительность
безопасность
стабильность системы
поддержку "нестандартного" оборудования
#linux #kernel #modules
🧑💻 NetworkAdmin