A Kernel 5.0 telepítése vagy frissítése a CentOS 7 rendszerben
Bár egyesek a Linux szót használják az operációs rendszer egészének ábrázolására, fontos megjegyezni, hogy szigorúan véve a Linux csak a kernel. Másrészt a disztribúció egy teljesen működőképes rendszer, amely a kernelre épül, számos alkalmazási eszközzel és könyvtárral.
A normál működés során a kernel két fontos feladat végrehajtásáért felelős:
- Interfészként működik a hardver és a rendszeren futó szoftver között.
- A rendszererőforrások lehető leghatékonyabb kezelése.
Ennek érdekében a kernel a beépített vagy később modulként telepíthető illesztőprogramokon keresztül kommunikál a hardverrel.
Például, amikor egy, a gépen futó alkalmazás csatlakozni akar egy vezeték nélküli hálózathoz, elküldi ezt a kérést a kernelnek, amely viszont a megfelelő illesztőprogramot használja a hálózathoz való csatlakozáshoz.
Javasolt olvasmány: Kernel frissítése Ubuntuban
Az időnként megjelenő új eszközök és technológiák miatt fontos, hogy kernelünket naprakészen tartsuk, ha a legtöbbet akarjuk kihozni belőlük. Ezenkívül a kernel frissítése segít új kernelfunkciók kihasználásában és megvédeni magunkat a korábbi verziókban felfedezett sebezhetőségektől.
Készen áll a kernel frissítésére a CentOS 7 rendszeren vagy azok valamelyik származékán, például azRHEL 7en és a Fedoran? Ha igen, olvass tovább!
1. lépés: A telepített kernelverzió ellenőrzése
Amikor telepítünk egy disztribúciót, az tartalmazza a Linux kernel egy bizonyos verzióját. A rendszerünkre telepített aktuális verzió megjelenítéséhez a következőket tehetjük:
uname -sr
A következő képen a fenti parancs kimenete látható egy CentOS 7 szerveren:
Ha most felmegyünk a https://www.kernel.org/ oldalra, látni fogjuk, hogy a kernel legfrissebb verziója az írás idején 5.0 (más verziók is elérhetők ugyanerről az oldalról).
Ez az új Kernel 5.0 verzió egy hosszú távú kiadás, és 6 évig lesz támogatott, korábban az összes Linux Kernel verziót csak 2 évig támogatták.
Egy fontos dolog, amit figyelembe kell venni, a kernelverzió életciklusa – ha a jelenleg használt verzió az élettartama végéhez közeledik, akkor ezen időpont után már nem lesz elérhető hibajavítás. További információért lásd a kernel kiadások oldalát.
2. lépés: Kernel frissítése a CentOS 7 rendszerben
A legtöbb modern disztribúció lehetőséget biztosít a kernel frissítésére egy csomagkezelő rendszer, például a yum és egy hivatalosan támogatott tároló használatával.
Fontos: Ha egyénileg lefordított kernelt szeretne futtatni, akkor olvassa el cikkünket, amely elmagyarázza, hogyan fordítsa le a Linux kernelt CentOS 7 rendszeren forrásokból.
Ez azonban csak a disztribúció lerakataiból elérhető legfrissebb verzióra hajtja végre a frissítést – a https://www.kernel.org/ webhelyen elérhető legújabb verzióra nem. Sajnos a Red Hat csak az előbbi opció használatával teszi lehetővé a kernel frissítését.
A Red Hat helyett a CentOS lehetővé teszi az ELRepo használatát, amely egy harmadik féltől származó adattár, amely a legújabb verzióra való frissítést kernellé teszi.
Az ELRepo tárház CentOS 7 rendszeren való engedélyezéséhez tegye a következőket:
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
Ha a tárat engedélyezte, a következő paranccsal listázhatja az elérhető kernel.related csomagokat:
yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* elrepo-kernel: mirror-hk.koddos.net
Available Packages
kernel-lt.x86_64 4.4.176-1.el7.elrepo elrepo-kernel
kernel-lt-devel.x86_64 4.4.176-1.el7.elrepo elrepo-kernel
kernel-lt-doc.noarch 4.4.176-1.el7.elrepo elrepo-kernel
kernel-lt-headers.x86_64 4.4.176-1.el7.elrepo elrepo-kernel
kernel-lt-tools.x86_64 4.4.176-1.el7.elrepo elrepo-kernel
kernel-lt-tools-libs.x86_64 4.4.176-1.el7.elrepo elrepo-kernel
kernel-lt-tools-libs-devel.x86_64 4.4.176-1.el7.elrepo elrepo-kernel
kernel-ml.x86_64 5.0.0-1.el7.elrepo elrepo-kernel
kernel-ml-devel.x86_64 5.0.0-1.el7.elrepo elrepo-kernel
kernel-ml-doc.noarch 5.0.0-1.el7.elrepo elrepo-kernel
kernel-ml-headers.x86_64 5.0.0-1.el7.elrepo elrepo-kernel
kernel-ml-tools.x86_64 5.0.0-1.el7.elrepo elrepo-kernel
kernel-ml-tools-libs.x86_64 5.0.0-1.el7.elrepo elrepo-kernel
kernel-ml-tools-libs-devel.x86_64 5.0.0-1.el7.elrepo elrepo-kernel
perf.x86_64 5.0.0-1.el7.elrepo elrepo-kernel
python-perf.x86_64 5.0.0-1.el7.elrepo elrepo-kernel
Ezután telepítse a legújabb fővonali stabil kernelt:
yum --enablerepo=elrepo-kernel install kernel-ml
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: centos.mirror.net.in
* elrepo: mirror-hk.koddos.net
* elrepo-kernel: mirror-hk.koddos.net
* epel: repos.del.extreme-ix.org
* extras: centos.mirror.net.in
* updates: centos.mirror.net.in
Resolving Dependencies
--> Running transaction check
---> Package kernel-ml.x86_64 0:5.0.0-1.el7.elrepo will be installed
--> Finished Dependency Resolution
Dependencies Resolved
====================================================================================
Package Arch Version Repository Size
====================================================================================
Installing:
kernel-ml x86_64 5.0.0-1.el7.elrepo elrepo-kernel 47 M
Transaction Summary
====================================================================================
Install 1 Package
Total download size: 47 M
Installed size: 215 M
Is this ok [y/d/N]: y
Downloading packages:
kernel-ml-5.0.0-1.el7.elrepo.x86_64.rpm | 47 MB 00:01:21
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : kernel-ml-5.0.0-1.el7.elrepo.x86_64 1/1
Verifying : kernel-ml-5.0.0-1.el7.elrepo.x86_64 1/1
Installed:
kernel-ml.x86_64 0:5.0.0-1.el7.elrepo
Complete!
Végül indítsa újra
a gépet a legújabb kernel alkalmazásához, majd válassza ki a legújabb kernelt a menüből az ábrán látható módon.
Jelentkezzen be root felhasználóként, és futtassa a következő parancsot a kernel verziójának ellenőrzéséhez:
uname -sr
3. lépés: Állítsa be az alapértelmezett kernelverziót a GRUB-ban
Ahhoz, hogy az újonnan telepített verzió legyen az alapértelmezett rendszerindítási lehetőség, módosítania kell a GRUB konfigurációt az alábbiak szerint:
Nyissa meg és szerkessze a /etc/default/grub fájlt, és állítsa be a GRUB_DEFAULT=0
beállítást. Ez azt jelenti, hogy a GRUB kezdőképernyőjének első kernelje lesz alapértelmezett.
GRUB_TIMEOUT=5
GRUB_DEFAULT=0
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/root rd.lvm.lv=centos/swap crashkernel=auto rhgb quiet"
GRUB_DISABLE_RECOVERY="true"
Ezután futtassa a következő parancsot a kernelkonfiguráció újbóli létrehozásához.
grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-5.0.0-1.el7.elrepo.x86_64
Found initrd image: /boot/initramfs-5.0.0-1.el7.elrepo.x86_64.img
Found linux image: /boot/vmlinuz-4.20.0-1.el7.elrepo.x86_64
Found initrd image: /boot/initramfs-4.20.0-1.el7.elrepo.x86_64.img
Found linux image: /boot/vmlinuz-4.19.11-1.el7.elrepo.x86_64
Found initrd image: /boot/initramfs-4.19.11-1.el7.elrepo.x86_64.img
Found linux image: /boot/vmlinuz-4.19.0-1.el7.elrepo.x86_64
Found initrd image: /boot/initramfs-4.19.0-1.el7.elrepo.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-957.1.3.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-957.1.3.el7.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-693.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-693.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-1e2b46dbc0c04b05b592c837c366bb76
Found initrd image: /boot/initramfs-0-rescue-1e2b46dbc0c04b05b592c837c366bb76.img
done
Indítsa újra, és ellenőrizze, hogy alapértelmezés szerint a legújabb kernelt használja-e.
Gratulálunk! Frissítette kernelt a CentOS 7 rendszerben!
Összegzés
Ebben a cikkben elmagyaráztuk, hogyan frissítheti egyszerűen a Linux kernelt a rendszeren. Van még egy módszer, amelyre nem tértünk ki, mivel ez magában foglalja a kernel forrásból történő fordítását, ami egy egész könyvet megérdemelne, és nem ajánlott éles rendszereken.
Bár ez az egyik legjobb tanulási tapasztalat, és lehetővé teszi a kernel finom konfigurálását, előfordulhat, hogy a rendszer használhatatlanná válik, és előfordulhat, hogy a semmiből kell újratelepítenie.
Ha továbbra is érdekli a kernel tanulási élményként való felépítése, a Kernel kezdők oldalán talál útmutatást ennek végrehajtására.
Mint mindig, nyugodtan használja az alábbi űrlapot, ha bármilyen kérdése vagy megjegyzése van ezzel a cikkel kapcsolatban.