Как очистить раздел /boot в Ubuntu и освободить место
TL;DR
- Быстрое решение: выполните sudo apt autoremove, чтобы удалить старые неиспользуемые ядра; если /boot полностью занят, вручную удалите пакеты через dpkg –purge или используйте Synaptic.
- Постоянное решение: расширьте раздел /boot с помощью GParted (с загрузки live-USB или в VM) — только после резервного копирования и проверки последовательности разделов.
Быстрые ссылки
- Что такое раздел загрузки Linux и зачем его очищать
- Проверка заполнения раздела /boot
- Удаление старых ядер через терминал
- Удаление старых файлов ядра через Synaptic
- Увеличение раздела /boot с помощью GParted
- Активное управление разделами Linux
Краткое содержание
- Для освобождения места чаще всего достаточно sudo apt autoremove или удаления конкретных пакетов через dpkg –purge. Это удаляет старые неиспользуемые ядра и связанные файлы.
- Для тех, кто предпочитает GUI, Synaptic позволяет отметить и полностью удалить пакеты ядер несколькими кликами.
- Если очищение не помогает надолго, имеет смысл расширить раздел /boot с помощью GParted. Это рискованная операция — заранее создайте резервные копии.
Важно: перед любыми изменениями сделайте резервную копию важных данных и снимите копию конфигураций загрузчика. Операции с разделами и удаление активного ядра могут привести к неработающей системе.
Что такое раздел загрузки Linux и зачем его очищать
Раздел загрузки (обычно смонтирован как /boot) — это небольшой отдельный раздел на диске, который хранит файлы, необходимые для загрузки системы: образ ядра (vmlinuz), initramfs/initrd, конфигурации загрузчика (например, GRUB) и файлы System.map. Обычно размер этого раздела ограничен (например, 500 MiB), и при обновлении ядра старые версии остаются, накапливаясь со временем.
Зачем очищать:
- Избежать ошибки «/boot full» при установке обновлений ядра.
- Поддерживать порядок в списке загрузки и уменьшить время обновления конфигурации загрузчика.
- Удалить потенциально уязвимые или устаревшие ядра.
Короткое определение: ядро — центральная часть ОС, управляющая аппаратурой и процессами.
Проверка заполнения раздела /boot
Перед любыми действиями проверьте текущую ситуацию на диске и размер раздела /boot.
- Быстрый просмотр размера всех разделов:
df -h- Если нужно — список точек монтирования и устройств:
lsblk -f- Для подробного вывода конкретного раздела /boot можно использовать:
df -h /boot
sudo du -sh /boot/* | sort -hПример вывода df -h показывает общий размер, использованное и свободное место для /boot. Если процент использования близок к 100%, стандартный apt autoremove может не пройти — понадобится ручная очистка.


Удаление старых ядер через терминал
Общий подход:
- Узнать текущее запущенное ядро, чтобы его не удалить.
- Посмотреть список установленных пакетов ядра.
- Безопасно удалить старые версии, сначала через apt, затем при необходимости через dpkg –purge.
- Обновить конфигурацию GRUB и выполнить финальную очистку.
Шаг 1. Какое ядро сейчас активно
uname -rЗапомните или запишите эту версию — её удалять нельзя.
Шаг 2. Список установленных пакетов с “linux-image”
dpkg -l | grep linux-imageВ выводе статусы означают:
- ii — пакет установлен;
- rc — пакет удалён, но остались файлы конфигурации;
- un — не установлен и без конфигурации.
Шаг 3. Автоматическая очистка
sudo apt autoremoveapt autoremove удаляет неиспользуемые зависимости и иногда старые заголовки/initramfs. Если /boot частично свободен, команда часто решает проблему.
Примечание: apt autoremove не удалит активное текущее ядро и обычно оставляет одну-две резервные версии.
Шаг 4. Ручное удаление пакета ядра
Если autoremove не проходит из-за переполнения /boot или если нужно удалить конкретную версию, удаляйте пакет по имени:
sudo apt remove linux-image-<версия>Пример:
sudo apt remove linux-image-5.15.0-25-genericПосле этого рекомендуется выполнить:
sudo apt --fix-broken install
sudo apt autoremove
sudo update-grubЕсли пакет остался в состоянии rc (только конфигурация), полностью удалите его:
sudo dpkg --purge linux-image-5.15.0-25-genericdpkg –purge удаляет пакет и его конфигурационные файлы без проверки зависимостей, поэтому используйте осторожно.
Шаг 5. Удаление файлов напрямую из /boot (крайняя мера)
Если не получается удалить пакет и /boot полностью занят, можно временно удалить файлы ядра из /boot, чтобы освободить место и позволить apt завершить операции. Это опасно — удаляйте только файлы, принадлежащие уже удалённым пакетам.
Пример удаления одного файла:
sudo rm /boot/vmlinuz-6.2.0-26-genericУдаление по шаблону (brace expansion):
sudo rm /boot/*-6.2.0-{26,31}-*После освобождения места обязательно запустите:
sudo apt --fix-broken install
sudo apt autoremove
sudo update-grubЭто гарантирует, что пакеты и конфигурации будут корректно обновлены.
Советы и безопасные практики
- Всегда храните текущее ядро и как минимум одно предыдущее для аварийной загрузки.
- Делайте снимок системы (snapshot) или резервную копию /boot перед операциями на разделах.
- Не удаляйте файлы, если вы не уверены, какому пакету они принадлежат. Узнать владельца файла можно так:
dpkg -S /boot/vmlinuz-6.2.0-26-generic- После удаления пакетов проверяйте список доступных ядер и содержимое /boot:
ls -l /boot
dpkg -l | grep linux-image

Удаление старых файлов ядра через Synaptic
Для пользователей, предпочитающих графический интерфейс, Synaptic предоставляет удобный способ управления пакетами.
Установка и запуск Synaptic
sudo apt install synaptic
sudo synapticЗапустите Synaptic из меню приложений или из терминала. В окне Synaptic используйте “Разделы” или секции для фильтрации по категориям пакетов и найдите разделы, связанные с ядром.

Как найти и удалить старые ядра в Synaptic
- Нажмите “Sections” или “Разделы” и выберите “Kernel and Modules” или используйте поиск по linux-image.
- В результатах поиска правой кнопкой мыши пометьте для полного удаления старые пакеты linux-image-<версия> (не отмечайте текущее ядро и ближайшее предыдущее).
- Нажмите “Apply” и подтвердите операции.


После завершения Synaptic обновит базу пакетов и удалит файлы, освобождая пространство в /boot.

Преимущества Synaptic:
- Меньше рисков опечаток в командах.
- Визуальный контроль зависимостей перед удалением.
Ограничения:
- Не помогает, если /boot полностью заполнен и apt не может работать — в этом случае всё равно придётся делать ручные шаги.
Увеличение раздела /boot с помощью GParted
Если регулярная очистка не решает проблему, можно расширить раздел /boot. Это более постоянное решение, но и более рискованное.
Важно: операции с разделами могут безвозвратно повредить загрузочную запись. Создайте резервную копию важных данных и, при возможности, снимок виртуальной машины.
Общий план действий
- Создать live-USB с GParted Live или использовать ISO GParted в виртуальной машине.
- Перезагрузиться с USB / ISO и запустить GParted Live.
- Создать незанятое пространство рядом с /boot (обычно слева или справа в таблице разделов).
- Расширить /boot, переместив/уменьшив соседний раздел, затем применить изменения.
- Перезагрузиться в систему и проверить df -h.
Подготовка live-USB
- Скачайте GParted Live ISO.
- Запишите образ на USB с помощью Rufus (Windows), Etcher или dd.

Запуск GParted на реальном железе
- Зайдите в BIOS/UEFI и поставьте USB первым в порядке загрузки.
- Загрузитесь в GParted Live и выберите настройки по умолчанию.
Запуск GParted в виртуальной машине
- При работе с VM (VirtualBox, VMware) подключите ISO GParted к оптическому приводу виртуальной машины и выберите загрузку с CD/ISO.
- Не нужно создавать виртуальный диск для самого GParted — он работает в RAM.


Последовательность действий в GParted
- Определите, где находится /boot (обычно /dev/sda1 или /dev/sda2).
- Если рядом есть раздел с данными (например, /dev/sda3), сначала размонтируйте его в GParted (правый клик → Unmount).

- Уменьшите соседний не системный раздел, чтобы получить незанятое пространство рядом с /boot. Правый клик → Resize/Move. Укажите новый размер или перетащите край раздела.

- Правым кликом по разделу /boot выберите Resize/Move и добавьте свободное место к /boot, перетащив край вправо.

- Нажмите зелёную кнопку галочки Apply, чтобы выполнить все отложенные операции. Этот этап может занять время.

- После завершения проверьте сообщение об успешной операции и перезагрузитесь обратно в Ubuntu.

Проверка после изменения
df -h /boot
lsblk -fВ примере раздел увеличился с 500 MiB до ~1 GiB, что даёт дополнительную «подушку» для нескольких ядер.

Когда расширение раздела не помогает
- Если таблица разделов MBR и количество разделов ограничено (особенно при смешанных системах Windows/Linux), может быть сложно переместить разделы.
- На системах с шифрованием LVM/cryptsetup требуется особая последовательность действий и знание структуры LVM.
Активное управление разделами и профилактика
Регулярный план действий помогает избежать повторных проблем с /boot:
- Еженедельно или при обновлениях ядра проверяйте df -h и dpkg -l | grep linux-image.
- После крупных обновлений запускайте sudo apt autoremove и sudo update-grub.
- Храните процедуру восстановления и резервные копии.
Рекомендации по частоте и объёму
- Храните не более 3 установленных ядер: текущее + 1–2 резервных.
- Если вы активно тестируете ядра (например, для разработок), периодически очищайте старые образы и используйте отдельный раздел /boot большего размера или управляйте ядрами вручную.
Мини-методология для безопасной очистки раздела /boot
- Проверить текущее ядро: uname -r
- Просмотреть все пакеты ядра: dpkg -l | grep linux-image
- Попробовать sudo apt autoremove
- Если не хватает места, вручную удалить наиболее старые пакеты через apt remove или dpkg –purge
- Если пакеты оставляют «rc», выполнить dpkg –purge для этих записей
- Обновить GRUB: sudo update-grub
- Проверить df -h и lsblk
- Сделать заметку о проведённых действиях в журнале изменения системы
Риск-матрица и смягчающие меры
- Риск: удаление активного ядра → Последствие: система не загрузится. → Смягчение: проверить uname -r, сохранить как минимум одно предыдущее ядро.
- Риск: ошибочные операции с разделами → Последствие: потеря данных, загрузчик повредится. → Смягчение: резервная копия, использование live-USB, проверка SMART диска.
- Риск: некорректная очистка пакетов → Последствие: зависимые пакеты сломаются. → Смягчение: использовать apt –fix-broken install и проверять зависимости в Synaptic.
Сценарии отказа и план восстановления
Система не загружается после удаления ядра:
- Перезагрузитесь с live-USB/диска восстановления.
- Смонтируйте корневой раздел и проверьте /boot за наличие vmlinuz и initrd.
- Переустановите ядро: chroot и apt install linux-image-<версия>.
GParted прервал операцию и повредил таблицу разделов:
- Не записывайте новые данные на диск.
- Используйте инструменты восстановления разделов (testdisk) и восстановление загрузчика (grub-install).
Пакеты остались в состоянии rc и мешают установкам:
- Удалите их: sudo dpkg –purge $(dpkg -l | awk ‘/^rc/ {print $2}’)
Чеклист для разных ролей
Системный администратор:
- Сделать резервную копию системы или snapshot VM.
- Проверить uname -r и dpkg -l.
- Выполнить sudo apt autoremove.
- Удалить лишние пакеты через apt/dpkg.
- Обновить GRUB и протестировать перезагрузку.
Домашний пользователь:
- Убедиться, что есть резервная копия важных данных.
- Установить Synaptic и удалить старые ядра через GUI.
- Если не хватает места, временно удалить старые файлы только после выяснения владельца пакета.
Разработчик ядра/тестировщик:
- Держать отдельный большой раздел /boot или использовать LVM для гибкости.
- Автоматизировать очистку с помощью скрипта, но протестировать его на тестовой машине.
Скрипт-образец для безопасной очистки (примеры, использовать с осторожностью)
Этот скрипт не удаляет текущее ядро и оставляет последние 2 версии. Протестируйте вручную перед применением.
#!/bin/bash
set -e
KEEP=2
current=$(uname -r)
images=$(dpkg -l | awk '/linux-image-[0-9]/{print $2}' | sort -V)
# Список всех версий кроме текущей
to_remove=()
count=0
for img in $images; do
if [[ "$img" == *"$current"* ]]; then
continue
fi
to_remove+=("$img")
done
# Оставляем последние $KEEP
if [ ${#to_remove[@]} -le $KEEP ]; then
echo "Нет старых ядер для удаления"
exit 0
fi
remove_list=(${to_remove[@]:0:${#to_remove[@]}-$KEEP})
for pkg in "${remove_list[@]}"; do
echo "Удаляю $pkg"
sudo apt remove -y "$pkg" || sudo dpkg --purge "$pkg"
done
sudo apt autoremove -y
sudo update-grubПримечание: скрипт — пример. Всегда просматривайте список пакетов перед автоматическим удалением.
Советы по совместимости и миграции
- На системах с LVM раздел /boot иногда вынесен как отдельный физический раздел; при миграции на LVM убедитесь, что /boot остаётся доступным без шифрования при загрузке.
- При переходе с MBR на GPT или при изменении порядка дисков при установке Windows/других ОС — внимательно проверяйте расположение /boot и запись GRUB.
Примеры ошибок и варианты действий
- Ошибка: “dpkg: ошибка: неудачная обработка пакета” — попробуйте sudo dpkg –configure -a, затем sudo apt –fix-broken install.
- Ошибка: “cannot find kernel image” при обновлении GRUB — проверьте, что в /boot есть vmlinuz- и initrd.img-, затем sudo update-grub.
Краткая глоссарий
- /boot — раздел для загрузочных файлов.
- vmlinuz — бинарный образ ядра Linux.
- initramfs/initrd — начальная файловая система для загрузки.
- GRUB — загрузчик, который выбирает и запускает ядро.
- dpkg/apt — низкоуровневый и высокоуровневый менеджеры пакетов в Debian/Ubuntu.
Принятие решения когда очищать, а когда расширять
flowchart TD
A[Проверить df -h /boot] --> B{Свободного места достаточно?}
B -- Да --> C[Выполнить sudo apt autoremove]
B -- Нет --> D{Есть старые пакеты в dpkg?}
D -- Да --> E[Удалить через apt/dpkg или Synaptic]
D -- Нет --> F{Можно ли безопасно изменить соседний раздел?}
F -- Да --> G[Подготовить live-USB и расширить /boot через GParted]
F -- Нет --> H[Рассмотреть перенос /boot на другой диск или расширение раздела при следующем плановом обслуживании]
E --> C
G --> C
H --> I[Планирование: резервное копирование и миграция]Заключение
- Большинство проблем с переполнением /boot решаются удалением старых ядер: sudo apt autoremove и dpkg –purge — самые частые инструменты.
- Для графических пользователей Synaptic даёт удобный интерфейс, но в критической ситуации всё равно могут потребоваться ручные действия.
- Расширение раздела /boot через GParted даёт долговременное решение, но требует аккуратности и резервного копирования.
Резюме ключевых действий
- Проверьте текущее ядро: uname -r
- Сравните список пакетов: dpkg -l | grep linux-image
- Попробуйте sudo apt autoremove
- Если не помогает, удаляйте старые пакеты через apt remove или dpkg –purge
- При необходимости расширьте раздел /boot с помощью GParted после подготовки live-USB и резервного копирования
Спасибо за внимание. Если нужно — могу подготовить шаблонный скрипт отчёта о проделанных операциях или плейбук для автоматизации на Ansible.
Похожие материалы
Настройка Проводника в Windows 11
Outlook не получает письма Gmail — как исправить
Столбчатая диаграмма в Google Sheets — создание и настройка
Как приостановить обновления Windows 10 на 35 дней
Как использовать xmonad — быстрый старт