По случаю решил почистить систему от «старья»:
~$ sudo apt-get remove linux-image-3.2.0-31-generic linux-image-3.2.0-32-generic linux-image-3.2.0-33-generic linux-image-3.2.0-34-generic linux-image-3.2.0-35-generic
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
linux-image-3.2.0-31-generic linux-image-3.2.0-32-generic linux-image-3.2.0-33-generic linux-image-3.2.0-34-generic linux-image-3.2.0-35-generic
0 upgraded, 0 newly installed, 5 to remove and 62 not upgraded.
After this operation, 747 MB disk space will be freed.
Do you want to continue [Y/n]?
Продолжаем.
~$ sudo apt-get remove linux-headers-3.2.0-30 linux-headers-3.2.0-31 linux-headers-3.2.0-32 linux-headers-3.2.0-33 linux-headers-3.2.0-34 linux-headers-3.2.0-35
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
linux-headers-3.2.0-30 linux-headers-3.2.0-30-generic linux-headers-3.2.0-31 linux-headers-3.2.0-31-generic
linux-headers-3.2.0-32 linux-headers-3.2.0-32-generic linux-headers-3.2.0-33 linux-headers-3.2.0-33-generic
linux-headers-3.2.0-34 linux-headers-3.2.0-34-generic linux-headers-3.2.0-35 linux-headers-3.2.0-35-generic
0 upgraded, 0 newly installed, 12 to remove and 62 not upgraded.
After this operation, 405 MB disk space will be freed.
Do you want to continue [Y/n]?
В итоге больше Гига свободного места! Всем советую )))
Иногда еще
sudo apt-get autoremove
помогаетне на ядрах.
ибо:
cat /etc/apt/apt.conf.d/01autoremove
APT
{
NeverAutoRemove
{
"^firmware-linux.*";
"^linux-firmware$";
"^kfreebsd-image.*";
"^gnumach$";
"^gnumach-image.*";
};
Never-MarkAuto-Sections
{
"metapackages";
"restricted/metapackages";
"universe/metapackages";
"multiverse/metapackages";
"oldlibs";
"restricted/oldlibs";
"universe/oldlibs";
"multiverse/oldlibs";
};
};
Только сегодня autoremove снес старое ядро на 12.04. Может я что-то и путаю, но на сколько я помню, много раз видел, как среди прочего autoremove так же предлагал удалять старые ядра. То, что это не панацея для удаления всех старых ядер я знаю, чаще всего так же в ручную удалять приходиться.
Кстати нашел на просторах интернета строчку для удаления всех старых ядер кроме текущего. Опробовал на себе, работает :)
dpkg -l linux-* | awk '/^ii/{ print $2}' | grep -v -e `uname -r | cut -f1,2 -d"-"` | grep -e [0-9] | xargs sudo apt-get -y purge
Еще одно решение, оставляет два ядра, текущее и предыдущее:
OLD=$(ls -tr /boot/vmlinuz-* | head -n -2 | cut -d- -f2- | \
awk '"'"'{print "linux-image-" $0}'"'"' )
if [ -n "$OLD" ]; then
sudo apt-get -qy remove --purge $OLD
fi
sudo apt-get -qy autoremove --purge
Взято с askubuntu.com
Насколько я помню, мне не предлагал. Всегда выносил руками по мере заполнения рута :)
Я тоже руками выношу, тем более у меня boot отдельным разделом и заполняется быстро. И сегодня autoremove на одной из машин после обновления снес только одно ядро которое кажется до обновления было, а кучу других старых ядер оставил. Потому я и написал что иногда помогает.
он сносит linux-headers а не linux-images :-)
Во всяком случае, сегодня, после обновления был вынесен именно хедерс. Он он вроде всегда сам выносит после обновления метапакета.
Вероятно так оно и есть, я тоже уже об этом подумал. В следующий раз повнимательней посмотрю.
Подниму ка я тему...
dm@Samsung:~$ sudo apt-get autoremove
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Пакеты, которые будут УДАЛЕНЫ:
linux-headers-3.2.0-37 linux-headers-3.2.0-37-generic linux-headers-3.5.0-25 linux-image-3.2.0-37-generic
обновлено 0, установлено 0 новых пакетов, для удаления отмечено 4 пакетов, и 0 пакетов не обновлено.
После данной операции, объём занятого дискового пространства уменьшится на 276 MB.
Хотите продолжить [Д/н]?
Я уже говорил, что это далеко не панацея и я сам старые ядра руками вычищаю и что autoremove не удаляет все старые ядра. Написал в продолжении нашего разговора, что autoremove все же тоже ядра вычищает а не только headers.
ну нет, я понял, решил проверить, ни дома ни на работе, не цепляет.
При этом на работе еще и хидеры висят в установленных.
Причину я не выяснял, могу убрать и ручками.
Я честно говоря сам не понял чем autoremove руководствуется считая какие то ядра старыми а какие нет, так как у меня так же может снести одно-два из десяти. Просто когда в очередной раз предложил снести ядро я вспомнил про эту тему и потому написал.
ага... я тоже. Не понимаю логики.
Счас рылся на работе нашел 6 ядер установленых и 4 которые снесены, но остались конфиги.
хидеров тоже с 10 нашлось... разной степени...
Заодно и почистил обе системе ... :-)
Вот не знал, что старые ядра хранятся, только что вычистил. А вот вопрос, когда приходят обновления ядра, нужно ли новое ставить если вроде все работает? Что там в них нужного?
в рамках одной версии исправления безопасности, с переходом на новую версию добавляются и улучшаются драйвера
Или удаляются и ломаются. Всякое бывает :) Плюс всякие глобальные оптимизации или опять же наоборот.
За лет пять пользования линуксом как основной системой с приходом новых ядер никогда ничего не изменялось, вообще ) ни в лучшую, ни в худшую сторону. Причем пару дюжин собрал руками проводя "оптимизации". Но я консервативен в плане апгрейда железа. Главный объем там это конечно новые драйвера, если железо постоянно обновляется или что-то не работает, то надо пробовать свежие ядра. Те минорные обновления, что в рамках одной версии приходят надо ставить имхо ОБЯЗАТЕЛЬНО - там включены, среди прочего, патчи для устранения уязвимостей.
ps: не, один раз было улучшение, когда в районе ~2.6.20 стали поддерживаться искаропки USB 3G модемы, оценил удобство. Но было и ухудшение, после ~2.6.24 стал потрескивать звук в скайпе, что-то напортачили в alsa в драйвере (очень редко попадается, но мне "повезло").
Ну например...
а что ubuntu tweak не подходит ,у меня стоит и все сносит лишнее
Какой моральный человек (C) будет держать гигами старые ядра? Но главное другое, неужели Вы, за 5 лет 24 недели стажа регистрации на сайте никогда ранее не чистили «систему от «старья»»? Я не могу в это поверить.
А как чистить, можно еще и не один способ предложить, но на счет sudo apt-get autoremove для старых ядер, позволю себе не согласиться.
Судя по списку ядра только из одного релиза.
Да, почти за год в 12.04 накопилось )
Именно так, никогда ничего не чистил. Не видел необходимости. Да, autoremove иногда запускал, не помню почему ) , наверное "по мере заполнения рута" как удачно выразился DarkneSS. Поэтому и запостил, чтоб не пренебрегали из-за лени по крайней мере чисткой старых ядер и сопутствующего барахла ))) , действительно много места даром пропадает.
А я как-то привык старые ядра через Synaptic удалять... :) Нахожу по запросу linux-image и linux-headers пакеты от старых ядер и отмечаю их для полного удаления. Понимаю, что не Linux-way, и что минуты на две дольше, но мне и торопиться-то, по сути, некуда. Да и люблю, чтоб все наглядно было... :)))
я проще как-то удалял, но дело было давно, не припомню точно, вечером надо будет глянуть
именно так и чищу, просто когда впервый раз чистил не знал сколько у меня старых ядер.
не знаю как остальным, а мне так проще
novocat, +1, годная фича! Не знал, что в кедах есть такая... :)
хедеры остаются (
Мда... и файлы настроек старых linux-image-* тоже... :(
Рано радовались...
а я пользуюсь скриптом отсюда
очень радует. ниразу проблем не вызывал и очищает всё ненужное вместе со старыми ядрами.
Вычищает скрипт хорошо, сам им пользовался.
Но, теперь он и i386-библиотеки Steam вычищает. Еще их apt-get autoremove выносит на ура. :)
Ребята, извините, пожалуйста, что не очень то разбираюсь в терминах, поэтому не совсем понятны бывают иногда комментарии и советы. (По мере возможности пытаюсь вникнуть). Комп три года, сын сразу поставил Линукс, предложил на выбор Убунту и Кубунту. Выбрали с дочкой Кубунту и ни на какую другую систему не променяю! Сын азам научил (два года как уехал), поэтому теперь сама. Вот насчет удаления старых ядер - сфоткала Мион. Я думала, что при обновлениях системы старое автоматом удаляется. Нужно ли из этого что то удалить?
Самое простое решение для это скопировать следующий текст (выделить мышкой и нажать Ctrl-C )
OLD=$(ls -tr /boot/vmlinuz-* | head -n -2 | cut -d- -f2- | \
awk '"'"'{print "linux-image-" $0}'"'"' )
if [ -n "$OLD" ]; then
sudo apt-get -qy remove --purge $OLD
fi
sudo apt-get -qy autoremove --purge
открыть консоль, вставить этот текст (Shift-Ctrl-V) и запустить. Скрипт сам удалит все устаревшие ядра из системы оставив два последних.
На медне озадачился аналогичным вопросом на маршрутизаторе, который работает на 10.04.
У меня данный скрипт не завелся.
Точнее не работала конструкция awk '"'"'{print "linux-image-" $0}'"'"' )
Немного подправив получил это:
#!/bin/sh
#set -x
OLD=$(ls -tr /boot/vmlinuz-* | head -n -2 | cut -d- -f2- | awk '{ print "linux-image-"$0}')
if [ -n "$OLD" ]; then
sudo apt-get -qy remove --purge $OLD
fi
apt-get -qy autoremove --purge
все что начинается с linux и имеет в названии меньше 3.5.0-24 (т.е. 3.5.0-17 - 3.5.0.23) можна удалять
Спасибо!)))))А можно удалить в мионе, а не через консоль?
можно, позначив необходимое для удаления.
но лучше так так предложил Dm
Зачем ей 3.5.0-24 и 3.5.0-25, ежели рабочим ядром у нее является 3.5.0-26? Удалять можно смело и их тоже!
Запросто. Отмечаете для удаления пакеты linux-image-3.5.0-Х-generic, linux-image-extra-3.5.0-Х-generic, linux-headers-3.5.0-Х и linux-headers-3.5.0-Х-generic для каждой версии удаляемого ядра (где Х — номер версии удаляемого ядра) и применяете. Вот только, как Вы сами понимаете, долго это и нудно, столько мышью елозить! Гораздо проще применить скрипт, предложенный выше dm, либо, как вариант, скопировать отсюда, вставить в Терминал и выполнить:
sudo apt-get purge linux-{image,image-extra,headers}-3.5.0-{17,17-generic}
для каждого ненужного ядра, заменяя только "17" в команде на нужные цифры (в Вашем случае это 17, 18, 19, 21, 22, 23, 24, 25).
да, да, да.
правильно должен был написать "меньше или равно"
)))
Всем спасибо!!!)))Все сделала, как советовали (через консоль). Все старые ядра удалились.)))
В 14.04 нашёл скрипт по адресу:
/etc/kernel/postinst.d/apt-auto-removal
Он генерит файл:
root@n148:~# less /etc/apt/apt.conf.d/01autoremove-kernels
В итоге, после перезагрузки с новым ядром, выполняем в консоли выше указаный скрипт:
root@n148:~# /etc/kernel/postinst.d/apt-auto-removal
root@n148:~# apt-get autoremove
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Пакеты, которые будут УДАЛЕНЫ:
linux-headers-3.13.0-24 linux-headers-3.13.0-24-generic linux-image-3.13.0-24-generic linux-image-extra-3.13.0-24-generic
обновлено 0, установлено 0 новых пакетов, для удаления отмечено 4 пакетов, и 0 пакетов не обновлено.
После данной операции, объём занятого дискового пространства уменьшится на 221 MB.
Хотите продолжить? [Д/н]
и, о чудо, apt-get autoremove удаляет предыдущее ядро, чуть более чем полностью. А ларчик просто открывается, однако :)
sudo apt-get install -f && sudo apt-get autoremove
Даст тот же эффект
Не дало того же эффекта :/
Отправить комментарий