Kako izbrisati stara neuporabljena jedra v CentOS, RHEL in Fedora


V tem članku bomo prikazali, kako odstraniti stare/neuporabljene slike jedra v sistemih RHEL/CentOS/Fedora. Preden odstranite staro jedro, je pomembno, da svoje jedro posodabljate; namestite najnovejšo različico, da izkoristite nove funkcije jedra in zaščitite sistem pred ranljivostmi, ki so bile odkrite v starejših različicah.

Če želite namestiti ali nadgraditi na najnovejšo različico jedra v sistemih RHEL/CentOS/Fedora, preberite ta priročnik:

  1. Kako namestiti ali nadgraditi na najnovejšo različico jedra v CentOS 7

Pozor: Nasprotno, priporočljivo je, da v primeru težav z posodobitvijo obdržite vsaj eno ali dve stari jedrci.

Za prikaz trenutne različice Linuxa (jedra), ki se izvaja v vašem sistemu, zaženite ta ukaz.

# uname -sr

Linux 3.10.0-327.10.1.el7.x86_64

Tako lahko navedete vse slike jedra, nameščene v vašem sistemu.

# 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 namestiti yum-utils, ki je asortiman pripomočkov, ki se integrirajo z yumom, da postane močnejši in lažji za uporabo, tako da razširite njegove prvotne funkcije na več različnih načinov.

# yum install yum-utils

Eden od teh pripomočkov je čiščenje paketov, s katerim lahko izbrišete staro jedro, kot je prikazano spodaj, z zastavico count pa določite število jeder, ki jih želite pustiti v sistemu.

# 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!

Pomembno: Ko zaženete zgornji ukaz, bo odstranil vsa stara/neuporabljena jedra in obdržal trenutno delujoče in staro najnovejše jedro kot varnostno kopijo.

Fedora zdaj uporablja upravitelja paketov yum, zato morate s tem spodnjim ukazom odstraniti stara jedra v Fedori.

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

Drug alternativni način samodejnega odstranjevanja starih jeder je nastavitev omejitve jedra v datoteki yum.conf, kot je prikazano.

installonly_limit=2		#set kernel count

Shranite in zaprite datoteko. Ko boste naslednjič zagnali posodobitev, bosta v sistemu ostali samo dve jedri.

Morda boste radi prebrali tudi naslednje članke o jedru Linuxa.

  1. Nalaganje in razkladanje jedrnih modulov v Linuxu
  2. Kako nadgraditi jedro na najnovejšo različico v Ubuntuju
  3. Kako trajno in nestalno spremeniti parametre izvajanja jedra

V tem članku smo opisali, kako odstraniti stare/neuporabljene slike jedra v sistemih RHEL/CentOS/Fedora. Vsa mnenja lahko delite prek spodnjih povratnih informacij.