Centos удаляет старые ядра

Обновлено: 05.07.2024

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

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

Вот шаги по удалению неиспользуемых ядер в RHEL/Fedora/CentOS.

Список версий ядра

Откройте терминал и выполните следующую команду, чтобы получить последнюю версию ядра в Linux.

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

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

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

Вы всегда можете удалить указанный выше файл ядра с помощью команды rm. Но это может быть подвержено ошибкам, потому что, если вы удалите неправильную версию ядра, ваша система может перестать работать. Кроме того, если вы удалите последнюю версию ядра, а ваше обновление завершится ошибкой, возможно, вы не сможете вернуться к последнему работающему ядру. Поэтому рекомендуется установить утилиту yum-utils, позволяющую удобно контролировать удаляемые версии ядра. Вот команда для его установки.

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

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

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

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

Кроме того, вы также можете изменить файл yum.conf, чтобы указать, что вы хотите сохранить только две последние версии ядра. В этом случае yum будет автоматически сохранять только последнее ядро ​​и предыдущее, а остальные удалять каждый раз при обновлении вашего ядра.

Сохраните и закройте файл.

В этой статье мы узнали, как удалить старые версии ядра из системы, сохранив текущую и последнюю. На самом деле вы можете запускать вышеуказанные команды как cronjob, который запускается каждые 3-4 месяца. Таким образом, ваша система будет автоматически очищать все неиспользуемые версии ядра по мере обновления вашей системы.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Если вы цените то, что мы делаем здесь, в TecMint, вам следует подумать о следующем:

TecMint – это самый быстрорастущий и пользующийся наибольшим доверием сайт сообщества, где можно найти любые статьи, руководства и книги по Linux в Интернете. Миллионы людей посещают TecMint! для поиска или просмотра тысяч опубликованных статей, доступных всем БЕСПЛАТНО.

Если вам нравится то, что вы читаете, купите нам кофе (или 2) в знак признательности.

Поддержите нас

Мы благодарны за вашу бесконечную поддержку.

Похожие записи

Отключить SSH Корневой вход

Установить контейнер LXC Linux в CentOS

Установить пароль GRUB

Настройка репликации MySQL в Linux

Установить сервер Samba в RHEL

Yum Отключить пакеты для установки

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

Как удалить из меню загрузки старые версии 5.8.7 и 5.8.9

Файл конфигурации для dnf: /etc/dnf/dnf.conf .

Команда dnf, которую вы перечисляете, по-прежнему неверна, и тот, кто создал вики-страницу Fedora, ошибается. Ниже показано, что –latest-limit 1 идет от самого нового к самому старому, а не наоборот. В F26/F27 пакетная очистка не работает, и команда, которую вы показываете, не работает — она удаляет более новые ядра.

Перечисляет старое ядро. Похоже, что =[nospace]-X требуется, чтобы это работало, по крайней мере, в F27, в вики нет = и пробела. Положительные числа идут от новых к старым, а отрицательные числа начинаются с самых старых.

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

использование: репозапрос dnf.

В Fedora 26 это работало:

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

Ошибка:
Проблема: операция приведет к удалению следующих защищенных пакетов: kernel-core

Это потому, что

Показывает ваше текущее ядро

Похоже на более безопасную альтернативу.

но на самом деле единственная команда, работающая корректно, это та, что предоставил Майкл.

В разделе Удаление старых/неиспользуемых ядер в Fedora. В приведенной ниже команде необходимо удалить дефис -2, чтобы команда работала.

Спасибо за указание, исправил в статье..

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

Я полностью с этим согласен. И знаете почему? Что ж... RedHat удалось добиться того, чтобы следующая ошибка существовала с 2015 года, но до сих пор не исправлена ​​полностью.

Так что да, вы должны быть уверены, что сохраняете то, что работает.

С другой стороны, SUSE может автоматически поддерживать определенное количество ядер и автоматически очищать старые ядра, если хотите.

Теперь SUSE лучше тестируется, автоматически тестируется, лучше поддерживается, дешевле, лучше оснащен. Вам просто интересно, почему кто-то захочет использовать Fedora, Centos или Rhel. Самое интересное, что может сделать SUSE, — это обновление основных версий без проблем. РХ 6 на 7? Удачи с этим. И SUSE также может сделать полное обновление пакета обновлений, патчей, и вы также можете полностью (!) откатиться. В минутах.

Спасибо за полезную информацию об openSUSE, я думаю, пришло время начать использовать его, чтобы реализовать некоторые из преимуществ, которые вы упомянули выше. Еще раз большое спасибо за ответ.

Что делать, если вы хотите удалить более новое ядро. т.е. после обновления ядра происходит сбой системы, поэтому вам нужно использовать старое. Можно ли использовать этот метод для удаления самого нового и неиспользуемого ядра, а не старого?
Спасибо за прекрасные статьи!

Не совсем, вы можете запустить эту команду, чтобы удалить ядро ​​(желательно новое ядро):

И наконец, спасибо за полезный отзыв.

Есть что сказать? Присоединяйтесь к обсуждению. Отменить ответ

Этот сайт использует Akismet для уменьшения количества спама. Узнайте, как обрабатываются данные ваших комментариев.

Ядро — это мост между программным и аппаратным обеспечением, а также часть операционной системы, которая взаимодействует с аппаратным обеспечением.

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

Удалить старые ядра

Рекомендуется обновить пакеты всей системы и активное ядро ​​перед удалением старых ядер. Для этого выполните команду:

После обновления, чтобы проверить используемое текущее ядро, используйте следующую команду:

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

Вывод:

Как видите, в моей системе CentOS 8 установлено три ядра.

Теперь мы обсудим, как удалить старые неактивные ядра из наших систем.

Как упоминалось выше, вы никогда не должны удалять все старые неактивные ядра и всегда должны иметь как минимум два ядра (1 активное — 1 неактивное) в вашей системе.

Удалить старые ядра с помощью команды DNF

Мы можем использовать команду DNF для удаления старых неиспользуемых ядер. Просто выполните команду «dnf remove» с :

Как вы можете видеть на скриншоте выше, терминал запрашивает удаление трех пакетов. Разрешите удаление, нажав «y» и нажав «Enter»:

После успешного удаления старого ядра, если мы снова выполним команду «rpm -q kernel»:

Видите ли, у нас осталось только два ядра.

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

Вы можете изменить это число, задав другое значение –setopt installonly_limit=2.

В приведенной выше команде --setopt используется для изменения значения по умолчанию из /etc/dnf/dnf.conf. Если вы не зададите значение, dnf возьмет значение по умолчанию из dnf.conf.

Эта команда будет работать только в том случае, если активно последнее ядро. Если старая версия работает, команда безуспешно попытается удалить ее.

Еще один метод работает в более старых версиях CentOS, но с выпуском CentOS 8 этот метод перестал работать.

Итак, если вы все еще используете более старую версию CentOS/RHEL, вы все равно можете использовать приведенную ниже команду для удаления старых ядер:

Приведенная выше команда оставит два установленных ядра и удалит все другие старые и неиспользуемые версии ядра в вашей старой версии системы CentOS/RHEL.

Заключение

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

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

remove-old-linux-kernels-centos-in-rhel-8

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

Содержание:

Что такое ядро ​​Linux? :

Ядро Linux — это бесплатное, монолитное, модульное, многозадачное, Unix-подобное ядро ​​операционной системы с открытым исходным кодом. Он был задуман и создан в 1991 году Линусом Торвальдсом для его ПК на базе i386, и вскоре он был принят в качестве ядра для операционной системы GNU, созданной как свободная замена UNIX. С тех пор он породил большое количество дистрибутивов операционных систем, обычно также называемых Linux.

Linux развертывается на самых разных вычислительных системах, таких как встроенные устройства, мобильные устройства (включая его использование в операционной системе Android), персональные компьютеры, серверы, мейнфреймы и суперкомпьютеры.

Определение проблемы:

Если вы обновили свою операционную систему Linux, то вы заметили, что после каждого обновления ядра Linux в меню GRUB будет добавляться новая загрузочная запись, сохраняя при этом предыдущие записи без изменений. Взгляните на скриншот ниже.

01-grub-boot-menu-before-removing-linux-kernels

В конфигурациях CentOS/RHEL 8 по умолчанию диспетчер пакетов Yum устанавливает максимум 3 версии ядра Linux.Таким образом, загрузочные записи ядра ограничены только тремя.

В этой статье вы узнаете, как удалить старые ядра Linux из операционной системы CentOS/RHEL 8.

Проверьте установленные ядра Linux:

Подключитесь к серверу Linux как пользователь root.

Выполните следующую команду rpm, чтобы получить список установленных ядер в вашей операционной системе Linux.

Обычно в вашей операционной системе должно быть активно последнее ядро ​​Linux. Если только кто-то явно не установил старую версию ядра по умолчанию.

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

Если приведенная выше команда возвращает ядро, отличное от последнего, вам необходимо установить ядро ​​по умолчанию для GRUB.

Установите ядро ​​Linux по умолчанию:

Список доступных ядер Linux в каталоге /boot.

Выполните следующую команду, чтобы установить ядро ​​по умолчанию для GRUB.

Удалить старые ядра Linux:

По умолчанию ядра Linux всегда устанавливаются менеджером пакетов Yum отдельно, при этом старые версии остаются нетронутыми для резервной поддержки.

Это поведение контролируется двумя директивами диспетчера пакетов Yum.

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

installonly_limit — Максимальное количество версий, которые могут быть установлены одновременно для любого отдельного пакета, указанного в директиве installonlypkgs.

Проверьте текущее значение директивы installonly_limit

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

Вы можете заметить, что вместо изменения значения директивы installonly_limit в файле dnf.conf мы устанавливаем его во время выполнения только для текущей команды dnf.

Перезагрузите операционную систему Linux сейчас.

Проверьте загрузочное меню GRUB. Старые записи ядра удалены.

02-grub-boot-menu-after-removing-linux-kernels

Вывод:

В этой статье вы узнали, как безопасно удалить старые ядра Linux в CentOS/RHEL 8 или аналогичных дистрибутивах Linux. Если вам трудно понять приведенную выше статью, вам следует купить и прочитать Практическое руководство по командам, редакторам и программированию оболочки Linux, написанное Марком Собеллом и Мэтью Хелмке.

Читайте также: