Usunięto starą wersję jądra, aby zwolnić miejsce - teraz pojawiają się ciągłe błędy

10

Moja /bootpartycja była pełna, więc usunąłem starą wersję jądra, aby zwolnić miejsce, więc usunąłem następujące pliki /boot:

abi-3.8.0-25-generic
config-3.8.0-25-generic
initrd.img-3.8.0-25-generic
System.map-3.8.0-25-generic
vmlinuz-3.8.0-25-generic

Ale teraz, kiedykolwiek robię cokolwiek w apt-get, generuje błędy, na przykład:

sudo apt-get -f install
Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Setting up linux-image-extra-3.8.0-25-generic (3.8.0-25.37) ...
Internal Error: Could not find image (/boot/vmlinuz-3.8.0-25-generic)
dpkg: error processing linux-image-extra-3.8.0-25-generic (--configure):
subprocess installed post-installation script returned error exit status 2
No apport report written because MaxReports is reached already
Errors were encountered while processing:
linux-image-extra-3.8.0-25-generic
E: Sub-process /usr/bin/dpkg returned an error code (1)

Czy jest jakiś sposób, aby to naprawić, skoro głupio nie utworzyłem kopii zapasowej usuniętych plików?

$ dpkg -l linux-image-*
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                                            Version                      Architecture                 Description
+++-===============================================-============================-============================-===================================================================================================
un  linux-image-3.0                                 <none>                                                    (no description available)
rc  linux-image-3.5.0-17-generic                    3.5.0-17.28                  amd64                        Linux kernel image for version 3.5.0 on 64 bit x86 SMP
rc  linux-image-3.5.0-25-generic                    3.5.0-25.39                  amd64                        Linux kernel image for version 3.5.0 on 64 bit x86 SMP
rc  linux-image-3.5.0-26-generic                    3.5.0-26.42                  amd64                        Linux kernel image for version 3.5.0 on 64 bit x86 SMP
ii  linux-image-3.5.0-27-generic                    3.5.0-27.46                  amd64                        Linux kernel image for version 3.5.0 on 64 bit x86 SMP
rc  linux-image-3.8.0-19-generic                    3.8.0-19.30                  amd64                        Linux kernel image for version 3.8.0 on 64 bit x86 SMP
ii  linux-image-3.8.0-21-generic                    3.8.0-21.32                  amd64                        Linux kernel image for version 3.8.0 on 64 bit x86 SMP
ii  linux-image-3.8.0-22-generic                    3.8.0-22.33                  amd64                        Linux kernel image for version 3.8.0 on 64 bit x86 SMP
ii  linux-image-3.8.0-23-generic                    3.8.0-23.34                  amd64                        Linux kernel image for version 3.8.0 on 64 bit x86 SMP
ii  linux-image-3.8.0-25-generic                    3.8.0-25.37                  amd64                        Linux kernel image for version 3.8.0 on 64 bit x86 SMP
ii  linux-image-3.8.0-26-generic                    3.8.0-26.38                  amd64                        Linux kernel image for version 3.8.0 on 64 bit x86 SMP
ii  linux-image-3.8.0-29-generic                    3.8.0-29.42                  amd64                        Linux kernel image for version 3.8.0 on 64 bit x86 SMP
ii  linux-image-3.8.0-31-generic                    3.8.0-31.46                  amd64                        Linux kernel image for version 3.8.0 on 64 bit x86 SMP
ii  linux-image-3.8.0-32-generic                    3.8.0-32.47                  amd64                        Linux kernel image for version 3.8.0 on 64 bit x86 SMP
rc  linux-image-extra-3.5.0-17-generic              3.5.0-17.28                  amd64                        Linux kernel image for version 3.5.0 on 64 bit x86 SMP
rc  linux-image-extra-3.5.0-25-generic              3.5.0-25.39                  amd64                        Linux kernel image for version 3.5.0 on 64 bit x86 SMP
rc  linux-image-extra-3.5.0-26-generic              3.5.0-26.42                  amd64                        Linux kernel image for version 3.5.0 on 64 bit x86 SMP
ii  linux-image-extra-3.5.0-27-generic              3.5.0-27.46                  amd64                        Linux kernel image for version 3.5.0 on 64 bit x86 SMP
rc  linux-image-extra-3.8.0-19-generic              3.8.0-19.30                  amd64                        Linux kernel image for version 3.8.0 on 64 bit x86 SMP
ii  linux-image-extra-3.8.0-21-generic              3.8.0-21.32                  amd64                        Linux kernel image for version 3.8.0 on 64 bit x86 SMP
ii  linux-image-extra-3.8.0-22-generic              3.8.0-22.33                  amd64                        Linux kernel image for version 3.8.0 on 64 bit x86 SMP
ii  linux-image-extra-3.8.0-23-generic              3.8.0-23.34                  amd64                        Linux kernel image for version 3.8.0 on 64 bit x86 SMP
iF  linux-image-extra-3.8.0-25-generic              3.8.0-25.37                  amd64                        Linux kernel image for version 3.8.0 on 64 bit x86 SMP
ii  linux-image-extra-3.8.0-26-generic              3.8.0-26.38                  amd64                        Linux kernel image for version 3.8.0 on 64 bit x86 SMP
ii  linux-image-extra-3.8.0-29-generic              3.8.0-29.42                  amd64                        Linux kernel image for version 3.8.0 on 64 bit x86 SMP
ii  linux-image-extra-3.8.0-31-generic              3.8.0-31.46                  amd64                        Linux kernel image for version 3.8.0 on 64 bit x86 SMP
ii  linux-image-extra-3.8.0-32-generic              3.8.0-32.47                  amd64                        Linux kernel image for version 3.8.0 on 64 bit x86 SMP
ii  linux-image-generic                             3.8.0.32.50                  amd64                        Generic Linux kernel image


$ sudo apt-get --reinstall install linux-image-extra-3.8.0-25-generic
Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 8 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
E: Internal Error, No file name for linux-image-extra-3.8.0-25-generic:amd64
Alex
źródło
Jaka jest wydajność uname -a?
Braiam

Odpowiedzi:

19

Menedżer pakietów skarży się na niemożność usunięcia brakującego pliku. Daj więc to, czego chce! Znalazłem nawet plik o zerowej długości. W katalogu / boot utwórz brakujące pliki:

sudo touch vmlinuz-3.8.0-25-generic

... itd. Następnie po prostu uruchom czyszczenie wszystkich powiązanych pakietów:

sudo apt-get purge `apt-cache pkgnames | fgrep 3.8.0-25`

(Zostaniesz poproszony o potwierdzenie usunięcia).

ubfan1
źródło
2

Proszę nie usuwać niczego w swoim /bootkatalogu ręcznie! Do tego służy menedżer pakietów. Należy ponownie zainstalować pakiet, aby naprawić tę sytuację:

sudo apt-get --reinstall install linux-image-extra-3.8.0-25-generic
Braiam
źródło
Dzięki za pomoc, ale nie powodzenia: sudo apt-get - reinstall install linux-image-extra-3.8.0-25-generic Listy pakietów do czytania ... Gotowe Budowanie drzewa zależności Informacje o stanie odczytu ... Gotowe 0 uaktualnione, 0 nowo zainstalowanych, 1 ponownie zainstalowanych, 0 do usunięcia i 13 niezaktualizowanych. 1 nie w pełni zainstalowany lub usunięty. Po tej operacji zostanie wykorzystane 0 B dodatkowego miejsca na dysku. E: Błąd wewnętrzny, brak nazwy pliku dla linux-image-extra-3.8.0-25-generic: amd64
Alex
Dzięki za pomoc, uruchomiłem aktualizację i wkleiłem dane wyjściowe obu poleceń do pytania.
Alex