Следующий скрипт должен указать, является ли это Ubuntu. Если это не так, и единственное, что у вас есть, это CentOS, вы должны иметь это в предложении else:
dist=`grep DISTRIB_ID /etc/*-release | awk -F '=' '{print $2}'`
if [ "$dist" == "Ubuntu" ]; then
echo "ubuntu"
else
echo "not ubuntu"
fi
То, что я делаю, это:
Удалить или переместить версии ядра, которые вы не хотите, из /boot в другое место. Например, в моем случае у меня есть:
Для файлов abi у меня есть: abi-3.0.0-12, abi-3.0.0-13, abi-3.0.0-14, abi-3.0.0-15
Для конфигурационных файлов у меня есть: [ f8], config-3.0.0-14, config-3.0.0-15
В остальном у меня тоже одно и то же. Примерно 4 или 5 версий. Поэтому я буквально удаляю (или чаще рекомендую переместить) файлы в другое место и оставляю для них последнюю версию и предыдущую версию. Например, для файлов abi я бы оставил последние, которые являются abi-3.0.0-14 и abi-3.0.0-15
. То же самое относится к остальным, у вас должно быть несколько версий abi, config, initrd.img, System .map, vmcoreinfo и vmlinuz. Удалите / Переместите все, кроме последних 2.
, затем выполните sudo update-grub и перезагрузитесь. Вы должны теперь иметь только последние 2, показанные в списке.
ПРИМЕЧАНИЕ. Рекомендуется больше перемещать файлы, а не удалять, если у вас возникла проблема позже.
UPDATE: Как предложил Lekensteyn с помощью dpkg -S /boot/filename, вы покажете, какой пакет отвечает за имя файла при загрузке. Например: dpkg -S /boot/abi-3.0.0-12-generic покажет вам:
linux-image-3.0.0-12-generic: /boot/abi-3.0.0-12-generic
, что означает, что пакет linux-image-3.0.0-12-generic отвечает за установку этого конкретного файла. Если вы хотите, чтобы все файлы linux-image делали что-то вроде:
sudo apt-cache search linux-image или более дружественного sudo aptitude search linux-image
Затем вы можете использовать sudo apt-get remove PACKAGE для каждого, кроме конечно, потребуется некоторое время, так как их несколько. Быстрый способ GUI - linux-image-3.0.0-12-generic , поскольку вы можете выбрать несколько пакетов, а затем просто пометить их для удаления.
Другой способ GUI - Ubuntu Tweak (упомянутый TomTasche), который предлагает простой способ удалить старые ядра:
Я должен упомянуть, что когда я начал удаление файлов ядра Ubuntu-Tweak не существует. После использования и загрузки без каких-либо проблем я могу сказать, что вы можете использовать его и не бояться какой-либо проблемы, так как он удаляет пакеты так же, как очистка / удаление их с помощью aptitude или apt-get. Я по-прежнему рекомендую оставить предыдущую версию ядра, поэтому, если у вас есть 3.0.0-15 как последняя, продолжайте также 3.0.0-14 на случай, если что-то случится с 15, вы можете создать резервную копию, перейдя на 14.
Для установки ubuntu-tweak:
sudo add-apt-repository ppa:tualatrix/ppa
sudo apt-get update
sudo apt-get install ubuntu-tweak