Работа с ядром
Понятие ядра Linux
Ядро системы обеспечивает взаимодействие с аппаратными компонентами устройства
Для этого взаимодействия ядру нужны драйвера (модули в терминологии Linux)
У ядра есть различные способы обращения к этим драйверам:
initramfs (initial ram drive) - загружается вместе с системой, в него собираются драйверы перед установкой в систему
systemd-udevd - используется для взаимодействия с аппаратными компонентами, подключаемыми напрямую (например, USB Flash Drive), подгружая на лету драйвера устройства
modprobe - ручная загрузка драйвера
К ядру обращение происходит из шелла в пользовательском пространстве через syscall
Модули ядра
Модули ядра есть драйверы для взаимодействия с устройством
Большая часть модулей загружается с initramfs или systemd-udevd
modprobe используется для ручной загрузки модулей
modprobe -r - для выгрузки модулей
lsmod используется для отображения списка модулей
Modprobe
Является наследником классической утилиты insmolt
insmolt не учитывал зависимости модулей, в отличии от modprobe
modinfo отображает параметры модуля
Для изменения конфигурации модулей используется /etc/modprobe.conf или файлы в /etc/modprobe.d
Использование proc
/proc является файловой системой, которая предоставляет доступ к информации в ядре
PID директории (информация о процессах)
Статусы файлов (состояния системы)
Настройки в /proc/sys
Через echo можно записать параметр в любой файл в /proc/sys для изменения настроек ядра
Для изменения настроек с сохранением после перезагрузки необходимо править /etc/sysctl.conf (последний способ - не рекомендуется)
sysctl -a покажет все текущие настройки
Обновление ядра
Фактически обновление ядра проходит заменой старого на новое, инкрементальное обновление не допускается
Это же позволяет загрузить прежнее ядро в случае отказа нового
yum update kernel используется для обновления ядра
yum install kernel как альтернативный вариант
Last updated
Was this helpful?