Поиск по сайту:

Как удалить старые неиспользуемые ядра в CentOS, RHEL и Fedora


В этой статье мы покажем, как удалить старые/неиспользуемые образы ядра в системах RHEL/CentOS/Fedora. Однако прежде чем удалять старое ядро, важно поддерживать его в актуальном состоянии; установите последнюю версию, чтобы использовать новые функции ядра и защитить вашу систему от уязвимостей, обнаруженных в старых версиях.

Чтобы установить или обновить ядро до последней версии в системах RHEL/CentOS/Fedora, прочтите это руководство:

  1. Как установить или обновить до последней версии ядра в CentOS 7

Внимание. Напротив, рекомендуется сохранить хотя бы одно или два старых ядра на случай возникновения проблем с обновлением.

Чтобы отобразить текущую версию Linux (ядра), работающую в вашей системе, выполните эту команду.

uname -sr

Linux 3.10.0-327.10.1.el7.x86_64

Список всех установленных ядер в системе

Вы можете перечислить все образы ядра, установленные в вашей системе, следующим образом.

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

Удаление старых/неиспользуемых ядер в CentOS/RHEL

Вам необходимо установить yum-utils, набор утилит, которые интегрируются с yum, чтобы сделать его более мощным и простым в использовании, расширив его исходные функции в нескольких различных вариантах. способы.

yum install yum-utils

Одной из этих утилит является package-cleanup, которую вы можете использовать для удаления старого ядра, как показано ниже. Флаг счетчика используется для указания количества ядер, которые вы хотите оставить в системе.

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!

Важно: после выполнения указанной выше команды будут удалены все старые/неиспользуемые ядра и сохранено текущее работающее и старое последнее ядро в качестве резервной копии.

Удаление старых/неиспользуемых ядер в Fedora

Fedora теперь использует менеджер пакетов dnf, новую версию менеджера пакетов yum, поэтому вам нужно использовать эту команду ниже, чтобы удалить старые ядра в Fedora.

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

Другой альтернативный способ автоматического удаления старых ядер — установить ограничение ядра в файле yum.conf, как показано.

installonly_limit=2		#set kernel count

Сохраните и закройте файл. При следующем запуске обновления в системе останется только два ядра.

Вам также может быть интересно прочитать следующие статьи о ядре Linux.

  1. Как загружать и выгружать модули ядра в Linux
  2. Как обновить ядро до последней версии в Ubuntu
  3. Как изменить параметры времени выполнения ядра постоянным и непостоянным способом

В этой статье мы описали, как удалить старые/неиспользуемые образы ядра в системах RHEL/CentOS/Fedora. Вы можете поделиться своими мыслями через обратную связь ниже.