Как удалить старые файлы ядра из /boot и исправить потенциальную ошибку, указанную в <sudo dpkg --list 'linux-image *'>?

Любая помощь со следующим будет очень цениться:

Несколько дней назад я установил последнее стабильное ядро ​​Linux (3.16.3), а затем использовал один вкладыш, чтобы удалить мои старые ядра. Команда удалила кучу пакетов, включая мои драйверы AMD fglrx (сейчас я использую последнюю версию OpenSource Gallium), однако она не удалила старые ядра из /boot (которые больше не установлены). Детали смотрите ниже.

$ uname -a
Linux linux 3.16.3-031603-generic #201409171435 SMP Wed Sep 17 18:36:23 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux


$ sudo ls -l /boot
total 153701
-rw-r--r-- 1 root root  1158016 May  3 01:30 abi-3.13.0-24-generic
-rw-r--r-- 1 root root  1163858 Aug 15 03:56 abi-3.13.0-35-generic
-rw-r--r-- 1 root root  1163858 Sep  3 23:24 abi-3.13.0-36-generic
-rw-r--r-- 1 root root  1204707 Sep 17 20:04 abi-3.16.3-031603-generic
-rw-r--r-- 1 root root   165510 May  3 01:30 config-3.13.0-24-generic
-rw-r--r-- 1 root root   165652 Aug 15 03:56 config-3.13.0-35-generic
-rw-r--r-- 1 root root   165671 Sep  3 23:24 config-3.13.0-36-generic
-rw-r--r-- 1 root root   170795 Sep 17 20:04 config-3.16.3-031603-generic
drwxr-xr-x 5 root root     1024 Sep 30 13:20 grub
-rw-r--r-- 1 root root 28803145 Sep 26 18:48 initrd.img-3.13.0-24-generic
-rw-r--r-- 1 root root 26876001 Sep 23 17:05 initrd.img-3.13.0-35-generic
-rw-r--r-- 1 root root 28958561 Sep 26 18:46 initrd.img-3.13.0-36-generic
-rw-r--r-- 1 root root 28616184 Sep 30 13:31 initrd.img-3.16.3-031603-generic
drwx------ 2 root root    12288 Aug 28 16:23 lost+found
-rw-r--r-- 1 root root   176500 Mar 12  2014 memtest86+.bin
-rw-r--r-- 1 root root   178176 Mar 12  2014 memtest86+.elf
-rw-r--r-- 1 root root   178680 Mar 12  2014 memtest86+_multiboot.bin
-rw------- 1 root root  3372643 May  3 01:30 System.map-3.13.0-24-generic
-rw------- 1 root root  3386444 Aug 15 03:56 System.map-3.13.0-35-generic
-rw------- 1 root root  3386479 Sep  3 23:24 System.map-3.13.0-36-generic
-rw------- 1 root root  3629877 Sep 17 20:04 System.map-3.16.3-031603-generic
-rw------- 1 root root  5776416 May  3 01:30 vmlinuz-3.13.0-24-generic
-rw------- 1 root root  5806368 Aug 15 03:56 vmlinuz-3.13.0-35-generic
-rw------- 1 root root  5806848 Sep  3 23:24 vmlinuz-3.13.0-36-generic
-rw------- 1 root root  6417328 Sep 17 20:04 vmlinuz-3.16.3-031603-generic

Теперь мои вопросы:

  1. Как правильно удалить все файлы в моем / boot, кроме 4 файлов, связанных с 3.16.3? Могу ли я просто удалить их вручную, а затем обновить grub с помощью восстановления загрузки?

  2. Пожалуйста, посмотрите вывод команды ниже. Поскольку я не знаю его значения, может кто-нибудь сообщить мне, если это показывает ошибку или это то, что я должен увидеть?

Большое спасибо!:)

$ sudo dpkg --list '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             <none>           <none>           (no description available)
un  linux-image-3.0         <none>           <none>           (no description available)
ii  linux-image-3.16.3-0316 3.16.3-031603.20 amd64            Linux kernel image for version 3.16.3 on 64 bit x86

1 ответ

Чтобы избавиться от старых пакетов ядра, я сначала проверяю, не запущено ли ядро, которое я собираюсь удалить:)

uname -a

Затем я grep для пакетов, например:

dpkg -l | fgrep linux-image-
dpkg -l | fgrep 3.13.0-24

Затем я удаляю конкретные пакеты ядра из этого списка (ниже приведен только пример, вы можете скопировать / вставить фактические имена пакетов ядра):

apt-get purge linux-image-3.13.0-24-amd64 linux-headers-3.13.0-24-generic linux-headers-3.13.0-24-amd64

Если по какой-то причине файлы в /boot не удаляются корректно, вы можете удалить их вручную, конечно, следя за тем, чтобы НЕ удалять файлы, связанные с установленными linux-image-версиями, и НЕ удалять файлы, связанные с запущенным вами ядром. прямо сейчас.

После удаления файлов из /boot вы можете запустить update-grub, чтобы удалить связанные пункты меню.

Статус "un" мне не совсем подходит. Вы можете попробовать:

apt-get -f install

или же

apt-get install linux-image
Другие вопросы по тегам