Проблема initramfs, коли немає місця на диску


13

Я щойно модернізував з 10.10 до 11.04. У процесі оновлення він сказав, що виникла проблема з налаштуванням initramfs-tools, і мені потрібно було зробити sudo dpkg --configure -a

Отож, коли я вперше розпочав 11.04, я це зробив. Це вихід.

Setting up initramfs-tools (0.98.8ubuntu3) ...
update-initramfs: deferring update (trigger activated)
Processing triggers for initramfs-tools ...
update-initramfs: Generating /boot/initrd.img-2.6.38-8-generic

gzip: stdout: No space left on device
E: mkinitramfs failure cpio 141 gzip 1
update-initramfs: failed for /boot/initrd.img-2.6.38-8-generic
dpkg: error processing initramfs-tools (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 initramfs-tools

Після пошуку навколо, здавалося, що це проблема недостатнього місця в моєму / завантажувальному розділі. Це всього 100 Мб, і це ніколи раніше не було проблемою, але, незважаючи на видалення всіх, крім останнього ядра, я все одно отримую те саме повідомлення.

Відповіді:


19

100 Мб достатньо для 2 ядер і init ramdisk. Ви можете переглянути наявні встановлені ядра, виконавши:

dpkg -l 'linux-image-*' | grep '^ii'

Приклад виводу:

ii  linux-image-2.6.35-28-generic        2.6.35-28.50                               Linux kernel image for version 2.6.35 on x86/x86_64
ii  linux-image-2.6.38-8-generic         2.6.38-8.42                                Linux kernel image for version 2.6.38 on x86/x86_64
ii  linux-image-generic                  2.6.38.8.22                                Generic Linux kernel image

Після підтвердження того, що останнє ядро ​​працює, ви можете видалити попередні. У цьому випадку є лише одне зайве ядро:

sudo apt-get purge linux-image-2.6.35-28-generic

Якщо цей процес не завершився через попередні тригери встановлення, спробуйте додати -f( --fix-broken) раніше purge.


2
Під час очищення кожного старого ядра він видав ту саму помилку, яку я розміщував вище.
користувач3403

використання -f(силова операція) зовсім не допомагає.
Шрідхар Ратнакумар

-в жодному разі не означає сили
тушкуйте

4

Я б запропонував переглянути, що займає місце в /boot/:

find /boot/ -type f | xargs du | sort -n

Потім, якщо ви знайдете великих споживачів простору, ви можете побачити, з якого пакету вони:

dpkg -S /boot/some-large-file

І якщо цей пакет більше не потрібен, ви можете його видалити. Однак будьте дуже обережні, щоб не видаляти потрібні вам речі - зокрема завантажувач (grub) та ядро, що працює на даний момент.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.