This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
управление_ядром_и_модулями_в_linux [2013/11/11 13:58] val [Модификация исходных текстов ядра] |
управление_ядром_и_модулями_в_linux [2025/01/13 15:24] (current) val [Модули ядра] |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Управление ядром и модулями в Linux ====== | ====== Управление ядром и модулями в Linux ====== | ||
- | [[http://ru.wikipedia.org/wiki/Linux_(ядро)]] | + | * [[https://ru.wikipedia.org/wiki/Ядро_Linux|Ядро Linux]] |
===== Что за ядро ===== | ===== Что за ядро ===== | ||
Line 10: | Line 10: | ||
===== Модули ядра ===== | ===== Модули ядра ===== | ||
<code> | <code> | ||
- | # ls /lib/modules/`uname -r`/kernel/ | + | # find /lib/modules/`uname -r`/kernel/ |
- | # modprobe -l | + | $ lsmod |
- | # lsmod | + | # modinfo e1000 |
- | # modprobe ip_gre | + | # modprobe br_netfilter |
- | # modprobe -r ip_gre | + | # ###modprobe -r br_netfilter |
- | + | ||
- | # iptables -L | + | |
- | + | ||
- | # lsmod | grep ip | + | |
# cat /etc/modules | # cat /etc/modules | ||
+ | или | ||
+ | # cat /etc/modules-load.d/my.conf | ||
+ | </code><code> | ||
+ | ... | ||
+ | br_netfilter | ||
</code> | </code> | ||
+ | ===== Сообщения ядра ===== | ||
+ | <code> | ||
+ | $ dmesg -T | ||
+ | </code> | ||
===== Переменные ядра ===== | ===== Переменные ядра ===== | ||
+ | |||
+ | * [[https://coderoad.ru/8290046/ICMP-%D1%81%D0%BE%D0%BA%D0%B5%D1%82%D1%8B-linux|ICMP-сокеты (linux)]] | ||
+ | |||
<code> | <code> | ||
# sysctl -a | # sysctl -a | ||
# sysctl net.ipv4.ip_default_ttl=2 | # sysctl net.ipv4.ip_default_ttl=2 | ||
+ | |||
+ | # ###sysctl -w net.ipv4.ping_group_range="1 65535" | ||
# cat /etc/sysctl.conf | # cat /etc/sysctl.conf | ||
Line 40: | Line 50: | ||
===== Сборка модулей ядра ===== | ===== Сборка модулей ядра ===== | ||
- | [[http://www.altlinux.org/Сборка_модулей_ядра]] | + | * [[http://www.altlinux.org/Сборка_модулей_ядра|Сборка модулей ядра]] |
- | ===== Сборка ядра в Ubuntu ===== | + | ===== Сборка ядра ===== |
- | * [[http://www.linuxcenter.ru/lib/articles/system/kernel26_install.phtml]] | + | * [[https://youtu.be/QFoGnnB3WPg|Видео урок: Сборка ядра в linux]] |
- | * [[http://ubuntism.ru/2010/02/building-kernel-ubuntu/]] | + | * [[http://citkit.ru/articles/1066/|Пересборка ядра: ядерный распад или термоядерный синтез?]] |
- | * [[https://help.ubuntu.com/community/Kernel/Compile]] | + | * [[http://www.linuxcenter.ru/lib/articles/system/kernel26_install.phtml|Ставим ядро 2.6, или Ядерная физика для домохозяйки. Версия 1.1.]] |
- | ==== Установка инструментария ==== | + | |
+ | ==== Сборка ядра в Gentoo ==== | ||
+ | |||
+ | * [[https://wiki.gentoo.org/wiki/Kernel/Configuration/ru|Ядро/Конфигурация]] | ||
+ | |||
+ | * [[https://www.gentoo.org/news/2017/08/19/hardened-sources-removal.html|Hardened Linux kernel sources removal]] | ||
+ | <code> | ||
+ | # emerge --ask hardened-sources | ||
+ | # echo "=sys-kernel/hardened-sources-4.8.17-r2" >> /etc/portage/package.unmask | ||
+ | # emerge --ask hardened-sources | ||
+ | </code> | ||
+ | |||
+ | <code> | ||
+ | # time emerge -av sys-kernel/gentoo-sources | ||
+ | |||
+ | real 8m44.821s | ||
+ | user 5m37.132s | ||
+ | sys 1m56.026s | ||
+ | |||
+ | /usr/src/linux # make defconfig | ||
+ | |||
+ | /usr/src/linux # make menuconfig | ||
+ | |||
+ | /usr/src/linux # time make -j3 | ||
+ | |||
+ | real 20m6.287s | ||
+ | user 34m28.865s | ||
+ | sys 4m4.605s | ||
+ | |||
+ | /usr/src/linux # make modules_install | ||
+ | |||
+ | /usr/src/linux # make install | ||
+ | |||
+ | # grub-mkconfig -o /boot/grub/grub.cfg | ||
+ | </code> | ||
+ | ==== Сборка ядра в Debian/Ubuntu ==== | ||
+ | |||
+ | * Не рекомендуется в этом дистрибутиве | ||
+ | * [[http://ubuntism.ru/2010/02/building-kernel-ubuntu/|Оптимизация Ubuntu. Сборка ядра: предпосылки, рекомендации, практика.]] | ||
+ | * [[https://help.ubuntu.com/community/Kernel/Compile|Ubuntu/Kernel/Compile]] | ||
+ | |||
+ | === Установка инструментария === | ||
* [[Управление ПО в Linux#Работа с исходными текстами]] | * [[Управление ПО в Linux#Работа с исходными текстами]] | ||
Line 58: | Line 109: | ||
</code> | </code> | ||
- | ==== Получение исходных текстов из репозитория ==== | + | === Получение исходных текстов из репозитория === |
<code> | <code> | ||
Line 66: | Line 117: | ||
</code> | </code> | ||
- | ==== Получение исходных текстов из kernel.org ==== | + | === Получение исходных текстов из kernel.org === |
<code> | <code> | ||
Line 73: | Line 124: | ||
# tar -xvf linux-X.X.X.tar.bz2 | # tar -xvf linux-X.X.X.tar.bz2 | ||
</code> | </code> | ||
- | ==== Копирование конфигурации текущего ядра ==== | + | === Копирование конфигурации текущего ядра === |
<code> | <code> | ||
# cd linux-* | # cd linux-* | ||
Line 80: | Line 131: | ||
</code> | </code> | ||
- | ==== Модификация исходных текстов ядра ==== | + | === Модификация исходных текстов ядра === |
- | === Grsecurity === | + | * [[Linux Hardened#Hardened Debian/Ubuntu]] |
- | * [[http://ru.wikipedia.org/wiki/Grsecurity]] | + | === Конфигурирование, компилирование и установка ядра === |
- | * [[http://grsecurity.net/]] | + | |
- | * [[http://compilefailure.blogspot.ru/2011/02/grsecurity-patched-ubuntu-server-lts.html]] | + | |
- | * [[http://samag.ru/archive/article/341]] | + | |
- | * [[http://sourceforge.net/projects/ubuntugrsec/]] | + | |
- | * [[https://wiki.debian.org/Hardening]] | + | |
- | + | ||
- | <code> | + | |
- | # cd /usr/src | + | |
- | + | ||
- | # wget http://grsecurity.net/stable/grsecurity-X.X.X-X.X.X-201XXXXXXXX.patch | + | |
- | + | ||
- | # cd linux-* | + | |
- | + | ||
- | # patch -p1 < ../grsecurity-X.X.X-X.X.X-201XXXXXXXX.patch | + | |
- | + | ||
- | # apt-get install gcc-4.6-plugin-dev | + | |
- | </code> | + | |
- | ==== Конфигурирование, компилирование и установка ядра ==== | + | |
<code> | <code> | ||
# cd /usr/src | # cd /usr/src | ||
Line 131: | Line 164: | ||
</code> | </code> | ||
- | ===== Сборка ядра в Gentoo ===== | ||
- | * [[http://wiki.gentoo.org/wiki/Hardened_Gentoo/ru]] | ||
- | * [[http://www.gentoo.org/doc/ru/handbook/handbook-x86.xml?part=1&chap=7]] |