- +

Текущий рейтинг:
  • Удаление старых ядер 5 1

Автор: butjapka Тема: Удаление старых ядер  (Прочитано 1958 раз)

Оффлайн butjapka

  • Global Moderator
  • Старожил
  • *****
  • Сообщений: 1154
  • Репутация: +116/-0
  • Xubuntu 16.04 LTS
    • Просмотр профиля
Удаление старых ядер
« : Ноябрь 02, 2014, 19:49:19 »
Нашел в сети такой вот совет.
Удаление с помощью одной команды:
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

Разбор команды
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
удалить строки, которые не содержат цифры.
xargs sudo apt-get -y purge
полностью удалить эти пакеты.

Предупреждения
Если до выполнения этой команды вы обновили ядро или систему — перезагрузите компьютер!
Лучше в начале выполнить команду без xargs sudo apt-get -y purge и посмотреть что будет удалено!

Источник

Оффлайн abmx

  • Завсегдатай
  • ***
  • Сообщений: 164
  • Репутация: +2/-0
    • Просмотр профиля
Re: Удаление старых ядер
« Ответ #1 : Ноябрь 04, 2014, 17:31:06 »
butjapka,  спасибо за интересную "штуковину".  Пользоваться ею страшновато (мне!), но большое спасибо за ссылку на очень детальные пояснения. Они могут пригодиться для других вещей, когда пишешь скрипт "по аналогии".  :smile:

Оффлайн denkin

  • Global Moderator
  • Старожил
  • *****
  • Сообщений: 931
  • Репутация: +66/-2
    • Просмотр профиля
Re: Удаление старых ядер
« Ответ #2 : Ноябрь 04, 2014, 22:31:55 »
честно не помню какой именно из них (может даже все трое сразу необходимы), в общем наличие в системе таких пакетов освобождает от необходимочти ручной чистки ядер:
linux-image-generic linux-generic linux-headers-generic

и что касается приведенного в стартпосте способа - по моему проще и быстрее, воспользовавшись поиском в synaptic по тегам "linux-generic", вручную отметить к удалению все ненужные ядра. Затем дочистить командой
sudo apt-get autoremove

Оффлайн abmx

  • Завсегдатай
  • ***
  • Сообщений: 164
  • Репутация: +2/-0
    • Просмотр профиля
Re: Удаление старых ядер
« Ответ #3 : Ноябрь 05, 2014, 11:40:31 »
denkin, скорее всего никто и не будет спорить с Вами, что синаптиком (или критикуемым Вами твиком) эту операцию можно сделать проще. Но (!), (а) чем больше вариантов, тем лучше, (б) если графические проги недоступны, то тогда ..., и (в) разминка для мозгов. Кроме того, авторемув -- не самая хорошая прога: все что "авто" -- чревато (мнение не мое, а неких гуру). Забыл точно, но что-то есть аналогичное авторемуву (графическое), но с "галочками".

Оффлайн denkin

  • Global Moderator
  • Старожил
  • *****
  • Сообщений: 931
  • Репутация: +66/-2
    • Просмотр профиля
Re: Удаление старых ядер
« Ответ #4 : Ноябрь 05, 2014, 12:46:57 »
denkin, скорее всего никто и не будет спорить с Вами...
я внес свое замечание только потому, что однажды эта тема обсуждалась - у меня autoremove удалял ненужные ядра корректно и автоматически, а у пользователя xf∞ не удалял.
Скорее всего проблема была именно в отсутствии вышеуказанных пакетов.