Kako izbrisati stare neiskorištene jezgre u CentOS-u, RHEL-u i Fedori


U ovom ćemo članku pokazati kako ukloniti stare/neiskorištene slike jezgre na RHEL/CentOS/Fedora sustavima. Međutim, prije nego što uklonite staru jezgru, važno je ažurirati svoju jezgru; instalirajte najnoviju verziju kako biste iskoristili nove funkcije jezgre i zaštitili svoj sustav od ranjivosti otkrivenih u starijim verzijama.

Da biste instalirali ili nadogradili na najnoviju verziju jezgre u RHEL/CentOS/Fedora sustavima, pročitajte ovaj vodič:

  1. Kako instalirati ili nadograditi na najnoviju verziju jezgre u CentOS 7

Pažnja: Naprotiv, preporučuje se zadržavanje barem jednog ili dva stara jezgra na koja se vraćaju u slučaju problema s ažuriranjem.

Za prikaz trenutne verzije Linuxa (kernela) koja se izvodi na vašem sustavu, pokrenite ovu naredbu.

# uname -sr

Linux 3.10.0-327.10.1.el7.x86_64

Možete ovako nabrojati sve slike jezgre instalirane na vašem sustavu.

# rpm -q kernel

kernel-3.10.0-229.el7.x86_64
kernel-3.10.0-229.14.1.el7.x86_64
kernel-3.10.0-327.3.1.el7.x86_64
kernel-3.10.0-327.10.1.el7.x86_64

Morate instalirati yum-utils, što je asortiman uslužnih programa koji se integriraju s yumom kako bi ga učinili snažnijim i lakšim za upotrebu, proširujući njegove izvorne značajke na nekoliko različitih načina.

# yum install yum-utils

Jedan od ovih uslužnih programa je čišćenje paketa pomoću kojeg možete izbrisati staru jezgru, kao što je prikazano dolje, zastava count koristi se za određivanje broja jezgri koje želite ostaviti u sustavu.

# package-cleanup --oldkernels --count=2
Loaded plugins: fastestmirror, langpacks, product-id, versionlock
--> Running transaction check
---> Package kernel.x86_64 0:3.10.0-229.el7 will be erased
---> Package kernel.x86_64 0:3.10.0-229.14.1.el7 will be erased
---> Package kernel-devel.x86_64 0:3.10.0-229.1.2.el7 will be erased
---> Package kernel-devel.x86_64 0:3.10.0-229.14.1.el7 will be erased
--> Finished Dependency Resolution

Dependencies Resolved

===============================================================================================================================================================================================
 Package                                       Arch                                    Version                                                Repository                                  Size
===============================================================================================================================================================================================
Removing:
 kernel                                        x86_64                                  3.10.0-229.el7                                         @anaconda                                  131 M
 kernel                                        x86_64                                  3.10.0-229.14.1.el7                                    @updates                                   131 M
 kernel-devel                                  x86_64                                  3.10.0-229.1.2.el7                                     @updates                                    32 M
 kernel-devel                                  x86_64                                  3.10.0-229.14.1.el7                                    @updates                                    32 M

Transaction Summary
===============================================================================================================================================================================================
Remove  4 Packages

Installed size: 326 M
Is this ok [y/N]: y
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Erasing    : kernel-devel.x86_64                            1/4 
  Erasing    : kernel.x86_64                                  2/4 
  Erasing    : kernel-devel.x86_64                            3/4 
  Erasing    : kernel.x86_64                                  4/4 
Loading mirror speeds from cached hostfile
 * base: centos.mirror.snu.edu.in
 * epel: repo.ugm.ac.id
 * extras: centos.mirror.snu.edu.in
 * rpmforge: kartolo.sby.datautama.net.id
 * updates: centos.mirror.snu.edu.in
  Verifying  : kernel-3.10.0-229.el7.x86_64                   1/4 
  Verifying  : kernel-devel-3.10.0-229.14.1.el7.x86_64        2/4 
  Verifying  : kernel-3.10.0-229.14.1.el7.x86_64              3/4 
  Verifying  : kernel-devel-3.10.0-229.1.2.el7.x86_64         4/4 

Removed:
  kernel.x86_64 0:3.10.0-229.el7           kernel.x86_64 0:3.10.0-229.14.1.el7           kernel-devel.x86_64 0:3.10.0-229.1.2.el7           kernel-devel.x86_64 0:3.10.0-229.14.1.el7          

Complete!

Važno: Nakon pokretanja gornje naredbe uklonit će sva stara/neiskorištena jezgra i zadržati trenutno pokrenuto i staro najnovije jezgro kao sigurnosnu kopiju.

Fedora sada koristi upravitelj paketa yum, pa morate upotrijebiti ovu naredbu za uklanjanje starih jezgri na Fedori.

# dnf remove $(dnf repoquery --installonly --latest-limit 2 -q) 

Drugi alternativni način automatskog uklanjanja starih jezgri je postavljanje ograničenja jezgre u datoteci yum.conf kao što je prikazano.

installonly_limit=2		#set kernel count

Spremite i zatvorite datoteku. Sljedeći put kada pokrenete ažuriranje, na sustavu će ostati samo dva jezgra.

Možda ćete htjeti pročitati i sljedeće srodne članke o Linux jezgri.

  1. Kako učitati i iskrcati module jezgre u Linuxu
  2. Kako nadograditi kernel na najnoviju verziju u Ubuntuu
  3. Kako promijeniti trajne i nepostojane parametre vremena izvođenja kernela

U ovom smo članku opisali kako ukloniti stare/nekorištene slike jezgre na sustavima RHEL/CentOS/Fedora. Sve svoje misli možete podijeliti putem povratnih informacija odozdo.