У меня есть задача очистить загрузочный диск, который заполнен на 100%.
Перечисляю предыдущие версии:
dpkg -l linux-изображение *
И получит список из 12 версий,
rc linux-image-4.4.0-45-generic 4.4.0-45.66 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
rc linux-image-4.4.0-47-generic 4.4.0-47.68 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
вот хвост:
[...]
ii linux-image-4.4.0-78-generic 4.4.0-78.99 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
iF linux-image-4.4.0-79-generic 4.4.0-79.100 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
iF linux-image-4.4.0-81-generic 4.4.0-81.104 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
in linux-image-4.4.0-83-generic <none> amd64 (no description available)
iU linux-image-virtual 4.4.0.83.89 amd64 This package will always depend on the latest minimal generic kerne
Хорошо, поэтому я хочу удалить старые версии и оставить последнюю. Я сейчас на:
uname -r
4.4.0-78-generic
Итак, я хочу удалить старые версии:
apt-get autoremove -f
The following NEW packages will be installed:
linux-image-4.4.0-83-generic
0 upgraded, 1 newly installed, 0 to remove and 48 not upgraded.
10 not fully installed or removed.
[...]
Unpacking linux-image-4.4.0-83-generic (4.4.0-83.106) ...
dpkg: error processing archive /var/cache/apt/archives/linux-image-4.4.0-83-generic_4.4.0-83.106_amd64.deb (--unpack):
cannot copy extracted data for './boot/vmlinuz-4.4.0-83-generic' to '/boot/vmlinuz-4.4.0-83-generic.dpkg-new': failed to write (No space left on device)
No apport report written because the error message indicates a disk full error
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 4.4.0-83-generic /boot/vmlinuz-4.4.0-83-generic
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 4.4.0-83-generic /boot/vmlinuz-4.4.0-83-generic
Errors were encountered while processing:
/var/cache/apt/archives/linux-image-4.4.0-83-generic_4.4.0-83.106_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
Так что не вышло - почему-то написано: 0 удалить.
Пробую вручную
apt-get удалить linux-image- (вкладка)
и получите эти варианты
linux-image-4.4.0-62-generic linux-image-4.4.0-70-generic linux-image-4.4.0-75-generic
linux-image-4.4.0-64-generic linux-image-4.4.0-71-generic linux-image-4.4.0-78-generic
linux-image-4.4.0-66-generic linux-image-4.4.0-72-generic linux-image-virtual
Так что все они там не появляются.
Я пытаюсь удалить один из них
apt-get удалить linux-image-4.4.0-62-generic
Результат:
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
linux-image-virtual : Depends: linux-image-4.4.0-83-generic but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
??? Я хочу удалить их, и вместо этого предлагается использовать установку? Что я не могу сделать, так как загрузочный диск заполнен на 100% ...
Вам нужно освободить место на диске под /boot
раздел. Вы можете удалить файлы, относящиеся к определенному образу ядра Linux, которое вы хотите удалить. Вам просто нужно убедиться, что вы не удалили образ Linux по умолчанию, который будет загружаться во время запуска системы (обычно следует сохранить самую последнюю версию).
Тогда вы можете попробовать apt-get remove linux-image-version
и apt-get -f install
исправить сломанные зависимости.