Как я могу удалить основное ядро ​​и вернуться к поддерживаемому ядру?


11

Я недавно обновился до ядра 3.4 в моем Ubuntu 12.04. После этого компьютер не загружается. Поэтому я использовал предыдущее ядро ​​для загрузки. На самом деле я не хочу 3.4 ядра. Так как я могу удалить его и использовать предыдущий сам?

Ответы:


8

Как вы это установили? Если вы просто захватили множество файлов deb и установили их, избавиться от них так же просто, как просто найти пакеты и запустить apt-get removeдля каждого из них.

Я только что выпил чашку кофе, так что вы можете полностью разобраться с моим bashfu этим утром ... Это должно сказать вам, какие ядра установлены:

dpkg -l | awk '/linux-[^ ]+-[0-9]/ {print $2}'

Пройдите через те и отметьте версии, которые вы хотите обнулить. Также обратите внимание на текущую установку (uname -a) или любые новые ядра, которые вы установили после загрузки. Вы не хотите удалять самые новые.

В любом случае, когда у вас есть идея, вы можете массово удалить их, адаптировав эту команду:

sudo apt-get purge linux-{headers,image,image-extra}-3.5.0-{7,8,9}.*

Слова и цифры в фигурных скобках будут расширены во время выполнения, поэтому пакеты, на которые это будет нацелено:

linux-headers-3.5.0-7*
linux-headers-3.5.0-8*
linux-headers-3.5.0-9*
linux-image-3.5.0-7*
linux-image-3.5.0-8*
linux-image-3.5.0-9*
linux-image-extra-3.5.0-7*
linux-image-extra-3.5.0-8*
linux-image-extra-3.5.0-9*

Вы можете возиться с этим, но для очистки я считаю, что это намного безопаснее, чем широкий шаблон (как в настоящее время на ядре 3.5. *).

В любом случае, прочитайте, что собирается делать apt-get, прежде чем сказать «да». Удаление текущих ядер и всех ядер - удивительно распространенное затруднение, в котором пользователи Ubuntu оказываются. Это не исправимо, но да, не делайте этого!

Будьте особенно осторожны с подстановочными знаками и apt-get. Если вы не верите мне, бегите apt-get -s remove linux-image-3.4*и посмотрите, что он выберет (да - все ядра). Не беспокойтесь, что команда находится в «режиме имитации», поэтому она ничего не будет делать (и поэтому не нуждается в root).


Почти четыре года спустя ваши предупреждения остаются верными. Я был просто ленивым от ... дня головной боли, когда я прочитал подтверждение чуть более внимательно, чем обычно. Какой близкий звонок!
Fissure King

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

7

Удаление ядер Mainline

Основные ядра имеют свое собственное пространство имен ABI, поэтому они устанавливаются бок о бок со стандартными ядрами Ubuntu (например, каждое ядро ​​имеет отдельный каталог /lib/modules/VERSION). Это означает, что вы можете сохранить несколько основных и стандартных Ubuntu установленных ядер одновременно и выбрать нужное из загрузочного меню GRUB.

Если вы все равно хотите удалить ядро ​​mainline, сначала используйте:

dpkg -l | grep "linux\-[a-z]*\-"

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

sudo apt-get remove KERNEL_PACKAGES_TO_REMOVE

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

Источник: https://wiki.ubuntu.com/Kernel/MainlineBuilds#Uninstall_Mainline_Kernels

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.