Srdcem kazdeho linuxoveho systemu je kernel, jadro operacniho systemu. Linuxove jadro je modularni a siroce konfigurovatelne. Modularitou mam na mysli LKM (Loadable Kernel Modules), vlastnost umoznujici primo za behu vkladat nebo odebirat z kernelu jednotlive moduly (modul muze byt ovladac hardwaru nebo jina funkcionalita). Moduly jako takove naleznete v adresari /lib/modules/verze_kernelu a lze je spravovat pomoci nasledujicich prikazu:
LSMOD
lsmod
<===> vypise zavedene moduly // vypis modulu zavedenych v systemu
prikaz LSMOD ma tri sloupce
MODULE prvni sloupec ukazuje jmeno modulu
SIZE druhy sloupec ukazuje velikost modulu v bytech
USED BY treti sloupec ukazuje cislo ukazuje, kolik je momentalne pouzivano, hodnota nula znamena ze zadny modul neni pouzvan
Moduly zavadime dvema zpusoby:
1) pomoci INSMOD
2) pomoci MODPROBE (doporucuji timto zpusobem)
modprobe
<===> zavede urcity modulinsmod
<===> umoznuje zavest modul ze souboru
rmmod
<===> odstrani modul z kerneludepmod
<===> generuje zavislosti mezi modulymodinfo nazev_modulu
<===> detailni informace o modulu nazev_modulu
Obrazy jader (ano, kernelu muzete mit vice a pri startu systemu se rozhodnout, ktery pouzijete) se nachazi v adresari /boot, zpravidla v podobe souboru zacinajicich na vmlinuz. Jsou zde
ulozeny i inicialni ramdisky, a to v podobe souboru zpravidla zacinajicich na initrd, patricich vzdy konkretnimu obrazu jadra. Samozrejme ani kernel, ani inicalni ramdisk
se nemusi jmenovat tak, jak bylo uvedeno. Jejich zavadeni je potom zajistovano zavadecem (LILO nebo GRUB).
Existuji dva typy kernelu, kernel vanilla, tedy cisty, neopatchovany, oficialni kernel, ktery muzete stahnout z kernel.org, a distribucni kernel, tedy ten, ktery za vas jiz sestavil
spravce vasi distribuce. Distribucni jadra byvaji ruzne patchovane a byvaji nastavene tak, ze se spusti takrka na jakemkoliv hardwaru. Pouzivaji k tomu prave LKM
a moznost zavest moduly podle toho, jaky hardware je v pocitaci nalezen. To znacne zvysuje robustnost systemu, ktery je pak mozne prenaset mezi pocitaci s minimalnimi
zmenami. Mel bych dodat, ze k hlidani zmen v hardwaru pri behu systemu (napr. pripojeni USB zarizeni) se pouziva specialni demon - hotplug (momentalne jiz ve vetsine distribuci
nahrazen systemem udev). Ten hlida, co se zmeni a adekvatne se prizpusobi (zavede patricne moduly).
modprobe -c | wc -l
<===> number of modules available on the system (not just running)
dkms status
<===> zkontroluje moduly // dkms - Dynamic Kernel Module Support // dkms is a framework which allows kernel modules to be dynamically built for each kernel on your system in a simplified and organized fashion.