У меня есть 200 МБ для раздела /boot. Всякий раз, когда я пытаюсь обновить ядро, я получаю сообщение об ошибке, в котором в основном указано /boot.
Что можно сделать для очистки /boot и удаления / резервного копирования старых ядер?
Сначала проверьте версию ядра, чтобы вы не удалили изображение используемого ядра, выполнив:
uname -r
Теперь запустите эту команду для список установленных ядер:
dpkg --list 'linux-image*' | grep ^ii
и удалить ненужные вам ядра, выполнив это:
sudo apt-get remove linux-image-VERSION
Заменить VERSION версией ядра вы хотите удалить.
Когда вы закончите удаление старых ядер, вы можете запустить это, чтобы удалить все пакеты, которые вам больше не понадобятся:
sudo apt-get autoremove
И, наконец, вы может запустить это, чтобы обновить список ядра grub:
sudo update-grub
Сначала проверьте версию ядра, чтобы вы не удалили изображение используемого ядра, выполнив:
uname -r
Теперь запустите эту команду для список установленных ядер:
dpkg --list 'linux-image*' | grep ^ii
и удалить ненужные вам ядра, выполнив это:
sudo apt-get remove linux-image-VERSION
Заменить VERSION версией ядра вы хотите удалить.
Когда вы закончите удаление старых ядер, вы можете запустить это, чтобы удалить все пакеты, которые вам больше не понадобятся:
sudo apt-get autoremove
И, наконец, вы может запустить это, чтобы обновить список ядра grub:
sudo update-grub
Сначала проверьте версию вашего ядра, чтобы вы не удалили изображение используемого ядра, выполнив:
uname -r
Теперь запустите эту команду для список установленных ядер:
dpkg --list 'linux-image*' | grep ^ii
и удалить ненужные вам ядра, выполнив это:
sudo apt-get remove linux-image-VERSION
Заменить VERSION версией ядра вы хотите удалить.
Когда вы закончите удаление старых ядер, вы можете запустить это, чтобы удалить все пакеты, которые вам больше не понадобятся:
sudo apt-get autoremove
И, наконец, вы может запустить это, чтобы обновить список ядра grub:
sudo update-grub
Удаление старых ядер (для свободного места в / boot) см .: http://askubuntu.com/questions/89710/how-do-i-free-up-more-space-in-boot
sudo apt-get purge $(dpkg -l linux-{image,headers}-"[0-9]*" | awk '/ii/{print $2}' | grep -ve "$(uname -r | sed -r 's/-[a-z]+//')")
Затем запустите
sudo apt-get update
sudo apt-get autoremove
Удаляет все, кроме последних двух ядер. Протестировано на Ubuntu 16.04 LTS, когда /boot был на 100%, а apt-get upgrade потерпел неудачу, это последнее обновление ядра. Ядро autoremove является итеративным, поэтому, если у вас есть несколько ядер, они будут удалены по одному за раз. Так что будьте терпеливы.
Примечание: это только если Вы не можете использовать apt для очистки из-за 100% полный /загрузки
если apt-вам не работает, потому что ваш /Boot находится на 100%, вам потребуется, чтобы вычистить первый /загрузки. Скорее всего, это обновить ядро в частичное Установить, что означает АПТ почти полностью замерз, и будет держать говорю вам, чтобы запустить apt-get -f install даже при том, что команда не справляется.
получить список изображений ядра и определить, что вы можете сделать без. Эта команда покажет установленные ядра кроме запущенных один sudo dpkg --list 'linux-image*'|awk '{ if ($1=="ii") print $2}'|grep -v `uname -r`. Обратите внимание на два новых версий в списке. Вам не нужно беспокоиться о работающем, так как он не перечислены здесь. Вы можете увидеть, что с uname -r.
создать команду, чтобы удалить все файлы в /Boot для ядра, которые не важны для вас, используя расчалка расширение, чтобы держать вас в здравом уме. Помните, чтобы исключить текущую и две новых образов ядра. Пример: sudo rm -rf /boot/*-3.2.0-{23,45,49,51,52,53,54,55}-*. Вы также можете использовать диапазон с синтаксисом {80..84}.
[F5], чтобы очистить, что делает апта брюзга о частичной установки.
если вы столкнетесь с ошибкой, которая включает в себя строки, как "внутренняя ошибка: не удалось найти изображения (в файл/Boot/vmlinuz-3.2.0-56-общая)", а затем выполните команду sudo apt-get purge linux-image-3.2.0-56-generic (с соответствующей версии).
, наконец, sudo apt-get autoremove, чтобы очистить старые пакеты ядра, которые остались сиротами из-за ручной загрузки очистки.
предложение, запустить [F8] и [F9] и заботиться о каких-либо обновлений, которые могут иметь пятился, ждет вас, чтобы открыть весь раздел /Boot.
Suggestion2, Обзор https://help.ubuntu.com/community/AutomaticSecurityUpdates и рассмотреть вопрос о создании автоматической-обновление::удаление неиспользуемых зависимостей в True в /etc/кв./пом.конф.д/50unattended-модернизацию. Это будет эквивалентно команде autoremove после каждого обновления, чтобы убедиться, что вы очистить неиспользуемые ядра, но также удалить другие вещи, он думает, что не используются избавляя вас от этой проблемы в будущем.
Зачем это делать вручную, когда вы можете сделать это с помощью инструмента? Вы знаете, что вам понадобится это снова через 30 секунд, потому что в эти дни требуется 30 секунд, чтобы они обновили новое обновление ядра = P
Я рекомендую использовать этот инструмент, bootnukem
git clone https://github.com/erichs/bootnukem.git
cd bootnukem
sudo ./install.sh
Затем
sudo bootnukem --dry-run
Удалите --dry-run после подтверждения, что он выглядит безопасно
Я обнаружил, что намного легче отказаться от небольшого раздела и переместить /boot в корень.
Сначала переместите ваши данные из загрузочного раздела в root (запустите как sudo -s):
cp -a /boot /boot2
umount /boot
rmdir /boot
mv /boot2 /boot
Удалите (или комментарий) запись /boot в /etc/fstab:
vim /etc/fstab
Обновите grub и убедитесь, что все правильно:
update-grub
apt теперь может обновить без проблем.
Это оставляет неиспользуемый раздел 200mb (который вы могли бы использовать для чего-то другого, если вы сочтете это проблемой).
Удаление старых ядер (для свободного места в / boot) см .: http://askubuntu.com/questions/89710/how-do-i-free-up-more-space-in-boot
sudo apt-get purge $(dpkg -l linux-{image,headers}-"[0-9]*" | awk '/ii/{print $2}' | grep -ve "$(uname -r | sed -r 's/-[a-z]+//')")
Затем запустите
sudo apt-get update
sudo apt-get autoremove
Удаляет все, кроме последних двух ядер. Протестировано на Ubuntu 16.04 LTS, когда /boot был на 100%, а apt-get upgrade потерпел неудачу в последнем обновлении ядра. Ядро autoremove является итеративным, поэтому, если у вас есть несколько ядер, они будут удалены по одному за раз. Так что будьте терпеливы.
ПРИМЕЧАНИЕ: это только в том случае, если вы не можете использовать apt для очистки из-за 100% полной загрузки /
. Если apt-get не работает, потому что ваш / boot на 100% вам нужно сначала очистить / загрузить. Вероятно, это привело к обновлению ядра в частичной установке, которая означает, что apt полностью застыл и будет продолжать говорить apt-get -f install, даже если эта команда продолжает сбой.
Получить список изображений ядра и определить, с чем вы можете обойтись. Эта команда покажет установленные ядра, за исключением текущей версии sudo dpkg --list 'linux-image*'|awk '{ if ($1=="ii") print $2}'|grep -v `uname -r`. Обратите внимание на две новейшие версии в списке. Вам не нужно беспокоиться о запуске, поскольку он не указан здесь. Вы можете проверить это с помощью uname -r.
Создать команду для удаления всех файлов в / boot для ядер, которые не имеют значения для вас, с использованием расширения скобок, чтобы вы были здоровы. Не забудьте исключить текущие и два новых изображения ядра. Пример: sudo rm -rf /boot/*-3.2.0-{23,45,49,51,52,53,54,55}-*. Вы также можете использовать диапазон с синтаксисом {80..84}.
sudo apt-get -f install, чтобы очистить то, что делает apt grumpy об частичной установке.
Если вы столкнулись с ошибкой, включающей строку типа «Внутренняя ошибка: не удалось найти изображение (/ boot / vmlinuz-3.2.0-56-generic) », затем запустите команду sudo apt-get purge linux-image-3.2.0-56-generic (с соответствующей версией).
Наконец, sudo apt-get autoremove, чтобы очистить старые пакеты изображений ядра, которые был потерян сильной механической загрузкой.
Подумайте, запустите sudo apt-get update и sudo apt-get upgrade, чтобы позаботиться о любых обновлениях, которые могут быть скопированы, ожидая, пока вы обнаружите полный / загрузочный раздел.
Suggestion2, Review https://help.ubuntu.com/community/AutomaticSecurityUpdates и рассмотрите возможность установки Unattended-Upgrade :: Remove-Unused-Dependencies в true в /etc/apt/apt.conf.d/50unattended-upgrades. Это будет эквивалент запуска autoremove после каждого обновления безопасности, чтобы убедиться, что вы очищаете неиспользуемые ядра, но также удалите другие вещи, которые, по его мнению, не используются, избавят вас от этой проблемы в будущем.
зачем делать это вручную, когда вы можете сделать это с помощью инструмента? Вы знаете, вы собираетесь снова в 30 секунд, потому что это занимает 30 секунд для них, чтобы подтолкнуть новое обновление ядра эти дни =Р
я рекомендую использовать этот инструмент, bootnukem
git clone https://github.com/erichs/bootnukem.git
cd bootnukem
sudo ./install.sh
тогда
sudo bootnukem --dry-run
удалить --dry-run после того, как вы подтвердите это выглядит безопасным
Я обнаружил, что намного легче отказаться от небольшого раздела и переместить /boot в корень.
Сначала переместите ваши данные из загрузочного раздела в root (запустите как sudo -s):
cp -a /boot /boot2
umount /boot
rmdir /boot
mv /boot2 /boot
Удалите (или комментарий) запись /boot в /etc/fstab:
vim /etc/fstab
Обновите grub и убедитесь, что все правильно:
update-grub
apt теперь может обновить без проблем.
Это оставляет неиспользуемый раздел 200mb (который вы могли бы использовать для чего-то другого, если вы сочтете это проблемой).
Зачем это делать вручную, когда вы можете сделать это с помощью инструмента? Вы знаете, что вам понадобится это снова через 30 секунд, потому что для них требуется 30 секунд, чтобы в следующий раз нажать новое обновление ядра = P
Я рекомендую использовать этот инструмент, bootnukem
git clone https://github.com/erichs/bootnukem.git
cd bootnukem
sudo ./install.sh
Затем
sudo bootnukem --dry-run
Удалите --dry-run
после подтверждения, что он выглядит безопасным
sudo apt-get autoremove
Удаляет все, кроме последних двух ядер. Протестировано на Ubuntu 16.04 LTS, когда /boot
был на 100%, а apt-get upgrade
потерпел неудачу в последнем обновлении ядра. Ядро autoremove является итеративным, поэтому, если у вас есть несколько ядер, они будут удалены по одному за раз. Поэтому будьте терпеливы.
Я обнаружил, что гораздо легче отказаться от небольшого раздела и переместить /boot
в корень. Это также предотвращает любые проблемы с пространством в будущем.
Сначала переместите ваши данные из загрузочного раздела в root (запустите как sudo -s
):
cp -a /boot /boot2
umount /boot
rmdir /boot
mv /boot2 /boot
Удалите (или комментарий) в записи /boot
в /etc/fstab
:
vim /etc/fstab
Обновите grub и убедитесь, что все правильно:
update-grub
apt
теперь должно быть в состоянии обновить без проблем.
Это оставляет неиспользуемый раздел 200mb (который вы могли бы использовать для чего-то другого, если вы считаете, что это стоит проблемы).