Очистка старых ядер в Linux

0 Comments
old-kernel-linux

Сегодня в статье рассмотрим примеры по очистке/удалению старых версий ядра в Linux. Данные команды подойдут для операционных систем семейства Debian, таких как MX Linux, Debian, Ubuntu, Linux Mint, Lubuntu, Xubuntu, Elementary OS, Zorin OS и так далее. В конце статьи будут примеры для Proxmox.

Удаление старых версий ядра Linux

Давайте очистим систему от старых пакетов Kernel. Удаление старых ядер Linux одной командой из терминала.

Если вы обновили ядро или систему — перезагрузите компьютер! А лучше в начале выполнить команду без удаления!

dpkg -l 'linux-*' | sed '/^ii/!d;/'"$(uname -r | sed "s/\(.*\)-\([^0-9]\+\)/\1/")"'/d;s/^[^ ]* [^ ]* \([^ ]*\).*/\1/;/[0-9]/!d'
  • dpkg -l ‘linux-*’ – выбрать все установленные пакеты, которые начинаются с linux-.
  • sed ‘/^ii/!d;  удалить из списка все строки, которые начинаются с чего-то отличного от ii.
  • uname -r | sed “s/\(.*\)-\([^0-9]\+\)/\1/” – получить текущую версию вашего ядра.
  • /'”$(uname -r | sed “s/\(.*\)-\([^0-9]\+\)/\1/”)”‘/d – удалить все строки за исключением той, в которой содержится текущая версия ядра.
  • s/^[^ ]* [^ ]* \([^ ]*\).*/\1/ – в каждой строке оставить только название пакета
  • /[0-9]/!d  удалить строки, которые не содержат цифры.

Команда выдаст все ядра установленные в системе. Если в них нет новых только-что установленных (свежих) ядер, то переходим к удалению. Для этого в терминале набираем следующую команду:

dpkg -l 'linux-*' | sed '/^ii/!d;/'"$(uname -r | sed "s/\(.*\)-\([^0-9]\+\)/\1/")"'/d;s/^[^ ]* [^ ]* \([^ ]*\).*/\1/;/[0-9]/!d' | xargs sudo apt-get -y purge
  • xargs sudo apt-get -y purge – полностью удалить эти пакеты.

Удаление старых Kernels через DPKG

В этом примере вы сможете удалить старые ядра (kernel) через утилиту DPKG:

Получите список всех ядер за исключением текущего загруженного:

sudo dpkg -l | tail -n +6 | grep -E 'linux-image-[0-9]+' | grep -Fv $(uname -r)

Пример вывода команды:

rc linux-image-4.15.0-55-generic 4.15.0-55.60 amd64 Signed kernel image generic
rc linux-image-4.15.0-55-generic 4.15.0-75 amd64 Signed kernel image generic
rc linux-image-4.15.0-55-generic 4.15.0-76 amd64 Signed kernel image generic

В данном выводе может быть 3 статуса образов ядер:

  • rc – означает, что ядро уже удалено.
  • ii – означает, что ядро установлено и может быть удалено.
  • iU – ЭТО НЕЛЬЗЯ УДАЛЯТЬ. Это означает, что ядро не установлено, но требуется его установка в apt.

Хотя в примере стоит значение rc, но все же данный список раздражает. Давайте удалим старые ядра вручную, для этого набираем вот такую команду:

sudo dpkg --purge linux-image-4.15.0-55-generic

Так же попробуйте удалить пакеты со значение ii заголовочных файлов для старых ядер (Если команда выводит ошибки можете не обращать на это внимание):

Удаление старых версий ядра в Proxmox

Смотрим старые ядра:

dpkg -l 'pve-kernel-*' | sed '/^ii/!d;/'"$(uname -r | sed "s/\(.*\)-\([^0-9]\+\)/\1/")"'/d;s/^[^ ]* [^ ]* \([^ ]*\).*/\1/;/[0-9]/!d'

Удаляем в ручную при помощи apt, вот например версию 5.4.60:

apt remove pve-kernel-5.15.53-1-pve

или “залпом”:

apt-get purge $( dpkg --list | grep -P -o "pve-kernel-\d\S+" | grep -v $(uname -r | grep -P -o ".+\d") )

Если есть вопросы, то пишем в комментариях.

Также можете вступить в Телеграм канал, ВКонтакте или подписаться на Twitter. Ссылки в шапке страницы.
Заранее всем спасибо!!!

RSS

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Русифицируем Ubuntu Server 16.04/18.04/20.04 LTS
linux-logo

Сегодня в статье настроим и русифицируем Ubuntu Server 16.04/18.04/20.04. Чтобы поддерживался русский язык, и перевод системы стал русским

Вносим CAA запись в DNS (bind9)
dns_bind9

Начиная с сентября 2017 года удостоверяющим центрам предписано обязательно проверять CAA-записи в DNS перед генерацией сертификата

Обновления Ubuntu Server 16.04 до 18.04
linux-logo

В этой статье рассмотрим пример обновления Ubuntu Server 16.04 до Ubuntu Server 18.04 Все наши действия нам придется выполнять из Читать

Защита OpenVPN с помощью Fail2Ban
fail2ban-logo

В связи с последними блокировками IP-адресов Роскомнадзором, встала необходимость завести свой собственный VPN сервер. Если VPN у вас ещё не Читать

5 2 голоса
Рейтинг статьи

Подписаться
Уведомление о
guest

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

0 комментариев
Inline Feedbacks
Просмотреть все комментарии

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: