Удаление ядра linux arch

Обновлено: 08.07.2024

Что такое «неиспользуемые» ядра и почему они накапливаются в системе?

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

Но дело ещё и в том, что когда для системы выпускается новая версия Linux-ядра. То оно (новое ядро) будет установлено как отдельное независимое ядро. В процесс его установки также входит автоматическая настройка загрузчика GRUB. Для того, чтобы свежеустановленное ядро загружалось им по-умолчанию. При этом, как правило, старые ядра не удаляются. Это сделано для того, чтобы как можно в более полной степени следовать концепции «Unix Way». Которая, в частности, предполагает предотвращение всяческой самодеятельности, дабы не навредить системе. В случае с установкой новых версий ядер, старые не удаляются, чтобы дать возможность пользователю их использовать. Если с новым ядром возникнут какие-либо неполадки.

Стоит заметить, что в зависимости от «комплектности» ядер, они могут, занимать свыше 300 мегабайт дискового пространства. Нетрудно представить, какой объём в таком случае занимают несколько неиспользуемых старых ядер.

В данной статье будут рассмотрены способы очистки системы от неиспользуемых ядер на примере дистрибутивов Ubuntu. Так, например, для этих систем (как впрочем и для большинства других Linux-дистрибутивов) ядро представляет собой набор из следующих пакетов:

  • linux-headers-[версия] – заголовочные файлы ядра;
  • linux-image-[версия] – бинарный образ ядра;
  • linux-extra-[версия] – дополнительные внешние модули ядра для расширения функционала.

При установке и удалении перечисленных пакетов также выполняются и служебные скрипты для настройки системного загрузчика. Это необходимо для очистки его конфигурации (или для добавления в неё) в соответствии с установленными (или удаляемыми) в системе ядрами.

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

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

Как можно видеть, в качестве основного ядра (то, которое загружает загрузчик GRUB по-умолчанию) является версия 4.18.0-18.
Теперь можно выяснить, какие ещё ядра присутствуют в системе. На примере Ubuntu для этого используется команды менеджера пакетов dpkg:

Для первой команды вывод может быть примерно таким:

Похожий вывод даст вторая команда, но с тем лишь отличием, что в наименовании пакетов будет указано «linux-headers». Как можно видеть, кроме основного ядра версии 4.18.* в системе присутствуют также ядра из семейства версии 4.15 — 43, 46 и 47. От первых двух не мешало бы избавиться, высвободив таким образом значительный объём дискового пространства. А вот ядро 4.15.0-47 рекомендуется оставить как резервное. Это обычная практика в Linux-системах — иметь на борту альтернативное ядро предыдущей версии со стабильными проверенной конфигурацией и набором модулей.

Следует не забывать, выполнять вышеприведённые команды для пакетов linux-extra – они также могут присутствовать в системе. Но гораздо реже, поскольку данные пакеты чаще всего устанавливаются вручную.

Теперь, когда решено удалить неиспользуемые ядра версий 4.15.0-43 и 4.15.0-46, можно воспользоваться командами системы управления пакетами (СУП) для используемого дистрибутива. В данном случае, для Ubuntu, следует выполнить следующие команды:

Во время удаления этих пакетов конфигурация загрузчика GRUB будет автоматически перенастроена, ничего вручную для этого делать не нужно. Следует отметить, что в системе также могут присутствовать версии ядер без «generic» в наименовании пакетов. Если такие ядра не нужны, то и их также рекомендуется удалить. Изменения для GRUB можно заметить при следующей перезагрузке системы. В меню загрузчика (если в его конфигурации включен вывод меню выбора) будут отсутствовать пункты для соответствующих удалённых ядер.

Удаление сразу нескольких ядер

Нередко старых ядер накапливается довольно много. И при их удалении одной командой apt-get purge не совсем удобно перечислять наименования пакетов всех ядер. Чтобы сделать команду удаления ядер более удобочитаемой, а также сэкономить время на её составление. Можно воспользоваться некоторыми возможностями командной строки. Такими как регулярные выражения. В этом случае для удаления двух ядер версий 4.15.0-43 и 4.15.0-46. Включая их образы и заголовочные файлы запись соответствующих команд будет выглядеть следующим образом:

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

Использование специализированных утилит — скрипт purge-old-kernels

Некоторые пользователи могут и не решиться на такие действия как удаления ядер в силу малоопытности. Для подобных ситуаций во многих дистрибутивах Linux в арсенале стандартного репозитория имеются специализированные утилиты, которые позволяют безопасно выполнять самые ответственные действия с системой. Одной из таких утилит является bikeshed, которую можно установить из одноимённого пакета:

В набор этой утилиты входит скрипт purge-old-kernels для безопасной очистки системы от неиспользуемых ядер. Скрипту можно передавать параметр, указывающий, сколько ядер самых свежих версий оставить в системе. Например, для того, чтобы оставить только два самых свежих ядра:

Как и в случае с удалением ядер с помощью СУП, беспокоиться о перенастройке GRUB не стоит, поскольку данный скрипт это также умеет делать. Но если вдруг конфигурация загрузчика не была обновлена, то можно это сделать вручную, выполнив команду:

В заключение следует отметить, что использование скрипта purge-old-kernels является наиболее предпочтительным способом очистить систему от старых ядер. Главным преимуществом данного способа является его надёжность и универсальность, поскольку этот скрипт корректно удаляет даже те ядра, которые устанавливались в систему вручную путём сборки из исходных кодов.

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

old-kernel-linux

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

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

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

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

  • 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/ — в каждой строке оставить только название пакета
  • /8/!d удалить строки, которые не содержат цифры.

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

  • xargs sudo apt-get -y purge — полностью удалить эти пакеты.

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

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

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

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

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

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

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

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

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

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

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

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

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

Начните с нажатия клавиши Windows на клавиатуре, чтобы открыть меню Manjaro. В поле поиска найдите «Менеджер настроек Manjaro» и запустите его.

Примечание. Если вы используете версию Manjaro Linux от сообщества, а не традиционную версию, просмотрите настройки и запустите «Manjaro Settings Manager».

В диспетчере настроек есть несколько вариантов на выбор. Забудьте об остальных параметрах, поскольку в этом руководстве имеет значение только «Ядро». Щелкните значок пингвина, чтобы открыть инструмент управления ядром графического интерфейса.

Переключение ядер через графический интерфейс


Инструмент управления ядром Manjaro предлагает на выбор множество различных ядер Linux; как новые, так и устаревшие. По состоянию на январь 2018 года он работает под управлением последней стабильной версии Linux (также известной как версия 4.14).

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

Обновление ядер в Manjaro

Чтобы установить нестабильное ядро, найдите любой выпуск, после которого стоит «.r», и нажмите кнопку «установить». Например, чтобы запустить последний кандидат на выпуск Linux 4.15, вы должны нажать кнопку установки после «Linux 4.15.r180118.gdd»

Понижение версии ядер в Манджаро

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

Чтобы установить более старое ядро, нажмите «установить» рядом с любой версией Linux ниже версии 4.14. После нажатия кнопки установки вам будет предложено ввести пароль. Сделайте это, и установка начнется.

По завершении установки перезагрузите компьютер и выберите версию, которую вы установили, на экране загрузки.

Примечание: старые версии Linux восходят к версии 3.16 на Manjaro.

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

Далее следует система, запрашивающая пароль. Введите его правильно, и Manjaro очистит ядро ​​от Grub и остальной системы. Имейте в виду, что вы не можете удалить версию ядра Linux из Manjaro, если вы ее используете. Сначала вы должны переключиться на другое ядро.

Переключить ядра через терминал


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

Хотите версию Linux для Manjaro Linux ниже версии 4.x? Если да, попробуйте вместо этого использовать этот шаблон поиска. Пожалуйста, поймите, что этот шаблон поиска не идеален.

При использовании * диспетчер пакетов отобразит все пакеты Linux с 3.x или 4.x. Когда вы определились с точной версией ядра, которую хотите установить, процесс будет таким же простым, как установка любой другой программы через pacman в терминале. Например: чтобы установить версию ядра 4.12, вы должны:

Удаление ядер в Manjaro через терминал

Очисткой старых или альтернативных ядер, установленных на Manjaro, можно довольно хорошо управлять прямо в терминале через диспетчер пакетов. Для этого сначала объедините инструмент pacman с фильтром, чтобы найти точное имя удаляемого пакета ядра.

Еще раз, чтобы отфильтровать установленные ядра, которые начинаются с 3, а не с 4, попробуйте вместо этого использовать этот шаблон:

Этот метод не идеален, но он выделит большинство (если не все) ядер Linux, установленных в настоящее время внутри Manjaro. Отсюда обратите внимание на имя пакета и используйте инструмент диспетчера пакетов, чтобы удалить его из системы.

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

Есть модуль vmnet, который скомпилировал и установил его VMWare. Хочу вычистить этот модуль из системы вручную. Что делаю:

  • Модуль выгрузился, дполнительно проверяю, что в выводе его нет:

Если попытаться удалить файл /lib/modules/4.20.11-1-MANJARO/misc/vmnet.ko, то при следующем запросе modinfo выдаст ошибку:

Подозреваю, что есть какая-то база данных, репозиторий где устанавливаются (прописываются) модули. Как корректно удалить модуль?



Попробуй выполнить depmod .

есть какая-то база данных, репозиторий где устанавливаются (прописываются) модули

Она в файлах /lib/modules/$(uname -r)/modules* . Руками менять их не надо.

i-rinat ★★★★★ ( 27.02.19 21:32:32 )
Последнее исправление: i-rinat 27.02.19 21:34:50 (всего исправлений: 1)


P.S. После удаления файла /lib/modules/4.20.11-1-MANJARO/misc/vmnet.ko Запустил команду sudo depmod которая видимо перестроила/атуализировала БД модулей в файлах /lib/modules/4.20.11-1-MANJARO/modules.

Vmware разве не использует механизм dkms?


Вероятно использует, но на Manjaro Linux родной VMWare installer/uninstaller не заработал, вываливался в ошибку. Связано было с отсутствующей библиотекой libncursesw.so.5 в дистрибутиве. Вместо того, чтобы разбираться с Python’ом, решил вместо vmware-installer самостоятельно подчищать за ним и упаковал всё в пакет с помощью арчевого PKGBUILD.

Но позже, обнаружил, что достаточно создать симлинки для библиотек

и vmware-installer не выдает ошибок и корректно работает, за собою подчищает установленные модули ядра.

Вместо этого кода:

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

Favorite

Добавить в избранное

Главное меню » Linux » Как изменить версию ядра в Manjaro

MX Linux против Manjaro

Manjaro предлагает различные способы идентификации, обновления, понижения или добавления новых/старых ядер. Manjaro предоставляет отличный графический пользовательский интерфейс, известный как Manjaro System Manager для управления ядром. Кроме того, менеджер пакетов Manjaro Pacman также обеспечивает управление версиями ядра.

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

Переключение ядер Manjaro через интерфейс командной строки

Добавление, обновление, понижение версии и удаление версии ядра Manjaro может происходить двумя способами, то есть с помощью инструмента обнаружения оборудования Pacman и Manjaro (mhwd). В этом разделе обсуждается, как параллельно переключать ядра с помощью диспетчера пакетов Manjaro Pacman и его уникальной функции mhwd-kernel.

  • Pacman: использует официальный репозиторий Manjaro для обновления базы данных пакетов и всех системных пакетов.
  • mhwd-kernel: уникальная функция команды обнаружения оборудования manjaro, которая обеспечивает простую установку и управление ядрами системы.

Определить используемое ядро

Перед началом процесса обновления/понижения версии ядра определите сведения о текущей версии с помощью команды mhwd-kernel:

Приведенная выше команда выводит версию ядра системы, 5.9.16-1-MANJARO, вместе со списком установленных ядер.

Обновить ядро

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

Читать Как изменить поведение ноутбука при закрытии в Ubuntu с помощью HandleLidSwitch

Используйте команду pacman, чтобы вывести список всех пакетов версии ядра с 5.x и ниже:

Приведенная выше команда выводит все версии ядра, тогда как ядра с буквой «rt» представляют собой нестабильный выпуск ядра или версию ядра, работающую в реальном времени.

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

Как показано выше, указывать полный номер версии ядра необязательно. Точно так же важно отметить, что Manjaro автоматически обновляет все модули только что установленной версии из старой. Например, для обновления с 59 до 5.10 manjaro автоматически обновляет модули в 5.19 со всеми модулями в 5.14.

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

Вариант rmc

В mhwd-Kernel командование RMC вариант играет важную роль, так как она удаляет существующее ядро при установке нового ядра. Напротив, официальный сайт Manjaro рекомендует оставить старый на короткий промежуток времени, когда система обновляет новейшее ядро.

В любом случае Manjaro автоматически настраивает новое ядро; после этого перезагрузитесь, чтобы изменения вступили в силу.

Удалить ядра

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

Используйте команду mhwd-kernel для удаления заголовков ядра:

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

Переключение ядра через графический интерфейс

Manjaro Setting Manager предлагает ряд настроек, уникальных для его дистрибутива, для конфигурации оборудования и установки ядра. Нажмите клавишу «Windows» и введите «Manjaro Setting Manager» для просмотра графического интерфейса.

Как изменить версию ядра в Manjaro

Выберите «Ядро», чтобы войти в инструмент управления ядром графического интерфейса Manjaro. В нем будут перечислены все доступные версии ядра, а также сведения о существующем ядре.

Как изменить версию ядра в Manjaro

Как изменить версию ядра в Manjaro

Обновить ядро

Выберите любую из доступных версий и нажмите «install», чтобы добавить новое ядро. Появится экран для аутентификации пользователя. Введите свои учетные данные, чтобы начать процесс установки.

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

Понизить версию ядра

Поскольку каждый новый выпуск ядра добавляет исправления безопасности и драйверы, понижать версию ядра до более ранней версии неразумно. Однако иногда старые версии ядра работают лучше, чем новая версия. Выберите более старую версию до 5.9 и нажмите «install».

Удалить ядро

Нажмите «uninstall», чтобы очистить ядро. Помните, что нельзя удалять/деинсталлировать ядро. Переключитесь на другое ядро ​​на экране загрузки и удалите ненужное.

Заключение

В статье рассматриваются различные способы изменения версии ядра Manjaro. Мы обсудили инструмент обнаружения оборудования Manjaro и команды Manjaro Package Manager, mhwd-kernel и команды Pacman для добавления, удаления и обновления версий ядра. Мы также обсудили инструмент Manjaro GUI Kernel Management, который предоставляет список доступных ядер на выбор из устаревших и последних версий ядра.

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

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