![Apple anunță MacBook Pro de 14 și 16 inci cu cipuri din seria M3](/f/180885e27f090ad10d0536fe0020412d.jpg?width=100&height=100)
Deși unii oameni folosesc cuvântul Linux pentru a reprezenta sistemul de operare în ansamblu, este important să rețineți că, strict vorbind, Linux este doar nucleul. Pe de altă parte, o distribuție este un sistem complet funcțional construit deasupra nucleului cu o mare varietate de instrumente de aplicații și biblioteci.
În timpul operațiunilor normale, nucleul este responsabil pentru îndeplinirea a două sarcini importante:
Pentru a face acest lucru, nucleul comunică cu hardware-ul prin driverele care sunt încorporate în acesta sau cele care pot fi ulterior instalate ca un modul.
De exemplu, atunci când o aplicație care rulează pe mașina dvs. dorește să se conecteze la o rețea fără fir, trimite această cerere către nucleu, care, la rândul său, folosește driverul potrivit pentru a se conecta la rețea.
Citire sugerată:Cum se face upgrade Kernel în Ubuntu
Odată cu noile dispozitive și tehnologie care apar periodic, este important să ne menținem kernelul la zi dacă dorim să le valorificăm la maximum. În plus, actualizarea nucleului nostru ne va ajuta să valorificăm noile funcții ale nucleului și să ne protejăm de vulnerabilitățile descoperite în versiunile anterioare.
Gata să vă actualizați nucleul CentOS 7 sau unul dintre derivatele lor precum RHEL 7 și Fedora? Dacă da, continuați să citiți!
Când instalăm o distribuție, aceasta include o anumită versiune a kernel-ului Linux. Pentru a afișa versiunea curentă instalată pe sistemul nostru putem face:
# uname -sr.
Următoarea imagine arată ieșirea comenzii de mai sus într-un CentOS 7 Server:
Dacă mergem acum la https://www.kernel.org/, vom vedea că cea mai recentă versiune de kernel este 5.0 în momentul redactării acestui articol (alte versiuni sunt disponibile de pe același site).
Acest nou Kernel 5.0 versiunea este o versiune pe termen lung și va fi acceptată timp de 6 ani, mai devreme toate versiunile Linux Kernel erau acceptate numai timp de 2 ani.
Un lucru important de luat în considerare este ciclul de viață al unei versiuni de nucleu - dacă versiunea pe care o utilizați în prezent se apropie de sfârșitul vieții sale, nu vor mai fi furnizate remedieri de erori după acea dată. Pentru mai multe informații, consultați Kernel lansează pagină.
Majoritatea distribuțiilor moderne oferă o modalitate de a actualiza nucleul folosind un sistem de gestionare a pachetelor precum yum și un depozit cu suport oficial.
Important: Dacă doriți să rulați Kernel compilat personalizat, atunci ar trebui să citiți articolul nostru care explică Cum să compilați nucleul Linux pe CentOS 7 din surse.
Cu toate acestea, acest lucru va efectua doar actualizarea la cea mai recentă versiune disponibilă din depozitele de distribuție - nu cea mai recentă disponibilă în https://www.kernel.org/. Din păcate, Red Hat permite doar upgrade-ul nucleului folosind prima opțiune.
Spre deosebire de palarie rosie, CentOS permite utilizarea ELRepo, un depozit de terțe părți care face upgrade la o versiune recentă un nucleu.
Pentru a activa depozitul ELRepo pe CentOS 7, faceți:
# 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
Odată ce depozitul a fost activat, puteți utiliza următoarea comandă pentru a lista disponibilitățile kernel.related pachete:
# yum --disablerepo = "*" --enablerepo = "elrepo-kernel" listă disponibilă.
Yum - Găsiți versiunile disponibile ale nucleului
Plugin-uri încărcate: fastestmirror, langpacks. Se încarcă viteza oglinzii din fișierul gazdă cache * elrepo-kernel: mirror-hk.koddos.net. Pachete disponibile. 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
Apoi, instalați cel mai recent nucleu stabil principal:
# yum --enablerepo = elrepo-kernel install kernel-ml.
Instalați Kernel 5.0 în CentOS 7
Plugin-uri încărcate: fastestmirror, langpacks. Încărcarea vitezei oglinzii din fișierul gazdă cache * bază: 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 * actualizări: centos.mirror.net.in. Rezolvarea dependențelor. -> Executarea verificării tranzacției. > Pachetul kernel-ml.x86_64 0: 5.0.0-1.el7.elrepo va fi instalat. -> Rezoluție de dependență finalizată Dependențe rezolvate Dimensiune depozit versiune arhivă versiune. Instalarea: kernel-ml x86_64 5.0.0-1.el7.elrepo elrepo-kernel 47 M Rezumatul tranzacției. Instalați 1 pachet Dimensiune totală descărcare: 47 M. Dimensiune instalată: 215 M. Este ok [y / d / N]: y. Descărcarea pachetelor: kernel-ml-5.0.0-1.el7.elrepo.x86_64.rpm | 47 MB 00:01:21 Se execută verificarea tranzacției. Rularea testului tranzacției. Testul tranzacției a reușit. Tranzacție în curs Instalare: kernel-ml-5.0.0-1.el7.elrepo.x86_64 1/1 Verificare: kernel-ml-5.0.0-1.el7.elrepo.x86_64 1/1 Instalat: kernel-ml.x86_64 0: 5.0.0-1.el7.elrepo Complet!
In cele din urma, reporniți
pentru a aplica cel mai recent kernel, apoi selectați cel mai recent kernel din meniu, așa cum se arată.
Conectați-vă ca root și executați următoarea comandă pentru a verifica versiunea kernel-ului:
# uname -sr.
Pentru ca versiunea nou instalată să fie opțiunea de boot implicită, va trebui să modificați configurația GRUB după cum urmează:
Deschideți și editați fișierul /etc/default/grub și set GRUB_DEFAULT = 0
. Aceasta înseamnă că primul kernel din ecranul inițial GRUB va fi folosit ca implicit.
GRUB_TIMEOUT = 5. GRUB_DEFAULT = 0GRUB_DISABLE_SUBMENU = adevărat. GRUB_TERMINAL_OUTPUT = "consolă" GRUB_CMDLINE_LINUX = "rd.lvm.lv = centos / root rd.lvm.lv = centos / swap crashkernel = auto rhgb silent" GRUB_DISABLE_RECOVERY = "adevărat"
Apoi, executați următoarea comandă pentru a recrea configurația nucleului.
# grub2-mkconfig -o /boot/grub2/grub.cfg.
Setați versiunea implicită a kernelului în Grub
Se generează fișierul de configurare grub... Imagine Linux găsită: /boot/vmlinuz-5.0.0-1.el7.elrepo.x86_64. Imagine inițială găsită: /boot/initramfs-5.0.0-1.el7.elrepo.x86_64.img. Imagine Linux găsită: /boot/vmlinuz-4.20.0-1.el7.elrepo.x86_64. Imagine inițială găsită: /boot/initramfs-4.20.0-1.el7.elrepo.x86_64.img. Imagine Linux găsită: /boot/vmlinuz-4.19.11-1.el7.elrepo.x86_64. Imagine inițială găsită: /boot/initramfs-4.19.11-1.el7.elrepo.x86_64.img. Imagine Linux găsită: /boot/vmlinuz-4.19.0-1.el7.elrepo.x86_64. Imagine inițială găsită: /boot/initramfs-4.19.0-1.el7.elrepo.x86_64.img. Imagine Linux găsită: /boot/vmlinuz-3.10.0-957.1.3.el7.x86_64. Imagine inițială găsită: /boot/initramfs-3.10.0-957.1.3.el7.x86_64.img. Imagine Linux găsită: /boot/vmlinuz-3.10.0-693.el7.x86_64. Imagine inițială găsită: /boot/initramfs-3.10.0-693.el7.x86_64.img. Imagine Linux găsită: / boot / vmlinuz-0-rescue-1e2b46dbc0c04b05b592c837c366bb76. Imagine inițială găsită: /boot/initramfs-0-rescue-1e2b46dbc0c04b05b592c837c366bb76.img. Terminat.
Reporniți și verificați dacă cel mai recent nucleu este utilizat în mod implicit.
Felicitări! V-ați actualizat nucleul în CentOS 7!
În acest articol am explicat cum să actualizați cu ușurință kernel-ul Linux pe sistemul dvs. Există încă o altă metodă pe care nu am acoperit-o, deoarece implică compilarea nucleului din sursă, care ar merita o carte întreagă și nu este recomandată pentru sistemele de producție.
Deși reprezintă una dintre cele mai bune experiențe de învățare și permite o configurație fină a nucleului, este posibil să faceți sistemul inutilizabil și poate fi necesar să îl reinstalați de la zero.
Dacă sunteți încă interesat să construiți nucleul ca experiență de învățare, veți găsi instrucțiuni despre cum să faceți acest lucru la Kernel Newbies pagină.
Ca întotdeauna, nu ezitați să utilizați formularul de mai jos dacă aveți întrebări sau comentarii cu privire la acest articol.