
Эта ошибка появляется при попытке обновить CentOS 7. При попытке обновления привычной командой “yum update” получаем ряд ошибок. Среди этих ошибок видим следующую строку “At least xMB more space needed on the /boot filesystem”. Это следствие того, что в разделе /boot недостаточно свободного места для установки свежего ядра.
Предлагаем 2 варианта решения этой проблемы.
Новый способ:
Итак начнем. Первым делом получаем список ядер (они же kernel packages или пакеты ядра).
[cc lang=»bash» tab_size=»2″ lines=»7″]yum list kernel
[/cc]Используемое в данный момент ядро будет подчеркнуто и не может быть удалено, естественно.
Для того чтобы удалить неиспользуемые ядра установим пакет yum-utils и воспользуемся утилитой package-cleanup:
[cc lang=»bash» tab_size=»2″ lines=»7″] yum install yum-utilspackage-cleanup —oldkernels —count=2
[/cc]
Чтобы сделать эти изменения постоянными отредактируйте файл /etc/yum.conf и добавьте в него следующую строчку:
[cc lang=»bash» tab_size=»2″ lines=»7″] …installonly_limit=2
[/cc]
Если с местом в разделе /boot совсем плохо можно оставить только одно предыдущее ядро. В этом случае команда будет выглядеть так:
[cc lang=»bash» tab_size=»2″ lines=»7″] package-cleanup —oldkernels —count=1[/cc]
Старый способ:
При попытке обновления клиентского VPS с CentOS 6 командой “yum update” мы получили следующую ошибку:
[cc lang=»bash» tab_size=»2″ lines=»7″] Transaction Check Error: installing package kernel-2.6.32-358.2.1.el6.x86_64 needs 11MB on the /boot filesystemError Summary
Disk Requirements: At least 11MB more space needed on the /boot filesystem.
[/cc]
В новых версиях строка с ошибкой выглядит как “At least xMB more space needed on the /boot filesystem”, где х — недостающее пространство в Мб.
Чего тебе ещё надобно, бесовская машина….? father aka @it_maniac
Чтобы проверить остаток свободного места на разделах выполняем в консоли:
[cc lang=»bash» tab_size=»2″ lines=»7″] df -h[/cc]
И получем следующий вывод:
[cc lang=»bash» tab_size=»2″ lines=»7″] Filesystem Size Used Avail Use% Mounted on/dev/vda3 136G 60G 70G 46% /
tmpfs 5.3G 0 5.3G 0% /dev/shm
/dev/vda1 99M 77M 17M 82% /boot
/usr/tmpDSK 1.3G 35M 1.2G 3% /tmp
[/cc]
Как видно — раздел /boot заполнен на 82%.
Для получения списка установленных ядер (они же kernel packages) воспользуемся командой:
[cc lang=»bash» tab_size=»2″ lines=»7″] rpm -qa | grep kernel[/cc]
Вывод списка ядер:
[cc lang=»bash» tab_size=»2″ lines=»7″] kernel-2.6.32-220.7.1.el6.x86_64kernel-headers-2.6.32-358.2.1.el6.x86_64
dracut-kernel-004-303.el6.noarch
kernel-2.6.32-279.19.1.el6.x86_64
kernel-firmware-2.6.32-358.2.1.el6.noarch
kernel-2.6.32-279.9.1.el6.x86_64
[/cc]
Чтобы удалить самое старое ядро из списка выполняем в консоли:
[cc lang=»bash» tab_size=»2″ lines=»7″] rpm -e kernel-2.6.32-220.7.1.el6.x86_64[/cc]
Вы подставляете после rpm -e нужно ядро, обязательно самой низкой версии из списка.
После чего снова проверяем свободное пространство на разделах:
[cc lang=»bash» tab_size=»2″ lines=»7″] df -h[/cc]
На сей раз вывод следующий:
[cc lang=»bash» tab_size=»2″ lines=»7″] Filesystem Size Used Avail Use% Mounted on/dev/vda3 136G 60G 70G 46% /
tmpfs 5.3G 0 5.3G 0% /dev/shm
/dev/vda1 99M 52M 42M 56% /boot
/usr/tmpDSK 1.3G 35M 1.2G 3% /tmp
[/cc]
После всех манипуляций снова обновляем систем командой “yum update” и на этот раз все проходит как нужно.
Напоследок удаляем оставшиеся устаревшие ядра:
[cc lang=»bash» tab_size=»2″ lines=»7″] rpm -e kernel-2.6.32-279.9.1.el6.x86_64 kernel-2.6.32-279.19.1.el6.x86_64[/cc]
Результат — 70Мб свободно.
[cc lang=»bash» tab_size=»2″ lines=»7″] /dev/vda1 99M 25M 70M 26% /boot[/cc]
Этот «старый» способ прекрасно сработает и на современной CentOS 7.
Надеемся, что для кого-то эта статья окажется полезной.
Спасибо автору!!!!
Спасибо за пост
Спасибо, давно искал