Как я могу безопасно удалить старую версию ядра из раздела / boot? [дубликат]

На этот вопрос уже есть ответ здесь:

Я не очень люблю Linux , и у меня возникла следующая проблема, связанная с тем, что мой раздел / boot кажется заполненным, и это вызывает проблему при попытке установить программу.

Я пытаюсь подробно объяснить свои сомнения, потому что я не очень разбираюсь в системной инженерии (я разработчик программного обеспечения).

1) Выполнение статуса lsblk выводит информацию обо всех доступных или указанных блочных устройствах.

Эмпирически я думаю, что он должен показать список всех разделов / смонтированных дисков или что-то в этом роде. Что именно означает термины блочные устройства ?

Итак, если я выполню этот запрос в моей системе Ubuntu , я получу:

root@MyServer-VPS:~# lsblk
NAME           MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
fd0              2:0    1    4K  0 disk
sda              8:0    0   20G  0 disk
├─sda1           8:1    0  476M  0 part /boot
├─sda2           8:2    0    1K  0 part
├─sda3           8:3    0   10G  0 part
│ └─vg-lv_root 252:0    0 18.6G  0 lvm  /
└─sda5           8:5    0  9.5G  0 part
  ├─vg-lv_root 252:0    0 18.6G  0 lvm  /
  └─vg-lv_swap 252:1    0  952M  0 lvm  [SWAP]
sr0             11:0    1 1024M  0 rom

Итак, в чем разница между диском , часть (это должен быть раздел родительского диска), lvm и rom ?

Определенным разделом является загрузочный , этот:

sda1           8:1    0  476M  0 part /boot

, это раздел диска sda .

Насколько я знаю, он должен содержать загруженные версии ядра Linux .

Хорошо, точка монтирования - / boot , поэтому я думаю, что это каталог / boot в моей системе (не так ли?), Вот содержимое:

root@MyServer-VPS:/boot# ls
abi-4.4.0-21-generic  config-4.4.0-21-generic  grub                         System.map-4.4.0-21-generic  vmlinuz-4.4.0-21-generic
abi-4.4.0-31-generic  config-4.4.0-31-generic  initrd.img-4.4.0-21-generic  System.map-4.4.0-31-generic  vmlinuz-4.4.0-31-generic
abi-4.4.0-34-generic  config-4.4.0-34-generic  initrd.img-4.4.0-31-generic  System.map-4.4.0-34-generic  vmlinuz-4.4.0-34-generic
abi-4.4.0-38-generic  config-4.4.0-38-generic  initrd.img-4.4.0-34-generic  System.map-4.4.0-38-generic  vmlinuz-4.4.0-38-generic
abi-4.4.0-42-generic  config-4.4.0-42-generic  initrd.img-4.4.0-38-generic  System.map-4.4.0-42-generic  vmlinuz-4.4.0-42-generic
abi-4.4.0-45-generic  config-4.4.0-45-generic  initrd.img-4.4.0-42-generic  System.map-4.4.0-45-generic  vmlinuz-4.4.0-45-generic
abi-4.4.0-47-generic  config-4.4.0-47-generic  initrd.img-4.4.0-45-generic  System.map-4.4.0-47-generic  vmlinuz-4.4.0-47-generic
abi-4.4.0-51-generic  config-4.4.0-51-generic  initrd.img-4.4.0-47-generic  System.map-4.4.0-51-generic  vmlinuz-4.4.0-51-generic
abi-4.4.0-53-generic  config-4.4.0-53-generic  initrd.img-4.4.0-51-generic  System.map-4.4.0-53-generic  vmlinuz-4.4.0-53-generic
abi-4.4.0-57-generic  config-4.4.0-57-generic  initrd.img-4.4.0-53-generic  System.map-4.4.0-57-generic  vmlinuz-4.4.0-57-generic
abi-4.4.0-59-generic  config-4.4.0-59-generic  lost+found                   System.map-4.4.0-59-generic  vmlinuz-4.4.0-59-generic

Так что именно представляет собой это содержание? Загружены ли в этой системе разные версии ядра Linux?

В чем разница между abi- , config- , initrd.img- , System.map- и файлы vmlinuz-4 ?

Как я могу определить используемую версию ядра?

2) Выполнив условие df -h , я получаю следующий результат:

root@MyServer-VPS:~# df -h
Filesystem              Size  Used Avail Use% Mounted on
udev                    477M     0  477M   0% /dev
tmpfs                   100M   16M   84M  16% /run
/dev/mapper/vg-lv_root   19G   12G  6.3G  64% /
tmpfs                   497M     0  497M   0% /dev/shm
tmpfs                   5.0M     0  5.0M   0% /run/lock
tmpfs                   497M     0  497M   0% /sys/fs/cgroup
/dev/sda1               461M  458M     0 100% /boot
tmpfs                   100M     0  100M   0% /run/user/0

В частности, я есть это:

/dev/sda1               461M  458M     0 100% /boot

Значит, мой раздел / boot полностью заполнен?

Моя проблема: могу ли я безопасно удалить всю старую версию ядра (неиспользуемую), чтобы освободить пространство в / boot ?

Как это сделать?

0
задан 4 February 2017 в 10:08

1 ответ

Можно использовать команду:

uname -a

для наблюдения, какое ядро Вы в настоящее время используете. Затем можно использовать команду:

dpkg -l | grep linux-image

для наблюдения, какие более старые ядра можно безопасно удалить.

Начиная с удаления более старых ядер мог бы все еще вовлечь уже наличие некоторого свободного пространства в начальную загрузку / (Да, ситуация уловки - 22), Вы могли работать вокруг этого при помощи">", подают знак сначала обнулять более старые ядра, в которых Вы уверены, что не будете использовать их.

, Например:

sudo bash
> /boot/vmlinuz-4.4.0-59-generic
> /boot/vmlinuz-4.4.0-57-generic
exit

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

я использовал этот метод в прошлом успешно, потому что вручную удаляющие ядра в/boot/с командой комнаты, вероятно, приведет к проблемам с apt-get/dpkg, если Вы захотите использовать "Кв. - добираются, автоудаляют - чистка" команда.

0
ответ дан 7 November 2019 в 01:14

Другие вопросы по тегам:

Похожие вопросы: