Kaip ištrinti senus nenaudojamus branduolius Debian ir Ubuntu


Paskutiniame straipsnyje mes paaiškinome, kaip ištrinti senus nenaudojamus branduolius iš CentOS/RHEL/Fedora. Šiame straipsnyje mes paaiškinsime, kaip ištrinti senus nenaudojamus branduolius „Debian“ ir „Ubuntu“ sistemose, tačiau prieš eidami toliau, galbūt norėsite įdiegti naujausią versiją, kad galėtumėte pasinaudoti: saugos pataisomis, naujomis branduolio funkcijomis, atnaujintomis tvarkyklėmis ir pan. daug daugiau.

Norėdami atnaujinti savo branduolį į naujausią „Ubuntu“ ir „Debian“ versiją, vadovaukitės šiuo vadovu:

  1. Kaip atnaujinti branduolį į naujausią „Ubuntu“ versiją

Svarbu: patartina pasilikti bent vieną ar du senus branduolius, prie kurių reikėtų grįžti, jei kiltų problemų su atnaujinimu.

Norėdami sužinoti dabartinę sistemoje veikiančią „Linux“ branduolio versiją, naudokite šią komandą.

$ uname -sr

Linux 4.12.0-041200-generic

Norėdami išvardyti visus įdiegtus branduolius savo sistemoje, išleiskite šią komandą.

$ dpkg -l | grep linux-image | awk '{print$2}'

linux-image-4.12.0-041200-generic
linux-image-4.8.0-22-generic
linux-image-extra-4.8.0-22-generic
linux-image-generic

Pašalinkite senus nenaudojamus branduolius iš „Debian“ ir „Ubuntu“

Paleiskite toliau pateiktas komandas, kad pašalintumėte konkretų „Linux-image“ kartu su jo konfigūracijos failais, tada atnaujinkite „grub2“ konfigūraciją ir galiausiai perkraukite sistemą.

$ sudo apt remove --purge linux-image-4.4.0-21-generic
$ sudo update-grub2
$ sudo reboot
[sudo] password for tecmint: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  linux-generic linux-headers-4.8.0-59 linux-headers-4.8.0-59-generic linux-headers-generic linux-image-4.8.0-59-generic linux-image-extra-4.8.0-59-generic linux-image-generic
Suggested packages:
  fdutils linux-doc-4.8.0 | linux-source-4.8.0 linux-tools
Recommended packages:
  thermald
The following packages will be REMOVED:
  linux-image-4.8.0-22-generic* linux-image-extra-4.8.0-22-generic*
The following NEW packages will be installed:
  linux-headers-4.8.0-59 linux-headers-4.8.0-59-generic linux-image-4.8.0-59-generic linux-image-extra-4.8.0-59-generic
The following packages will be upgraded:
  linux-generic linux-headers-generic linux-image-generic
3 upgraded, 4 newly installed, 2 to remove and 182 not upgraded.
Need to get 72.0 MB of archives.
After this operation, 81.7 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://us.archive.ubuntu.com/ubuntu yakkety-updates/main amd64 linux-headers-4.8.0-59 all 4.8.0-59.64 [10.2 MB]
Get:2 http://us.archive.ubuntu.com/ubuntu yakkety-updates/main amd64 linux-headers-4.8.0-59-generic amd64 4.8.0-59.64 [811 kB]                                                               
Get:3 http://us.archive.ubuntu.com/ubuntu yakkety-updates/main amd64 linux-generic amd64 4.8.0.59.72 [1,782 B]                                                                               
Get:4 http://us.archive.ubuntu.com/ubuntu yakkety-updates/main amd64 linux-headers-generic amd64 4.8.0.59.72 [2,320 B]                                                                       
Get:5 http://us.archive.ubuntu.com/ubuntu yakkety-updates/main amd64 linux-image-4.8.0-59-generic amd64 4.8.0-59.64 [23.6 MB]                                                                
Get:6 http://us.archive.ubuntu.com/ubuntu yakkety-updates/main amd64 linux-image-extra-4.8.0-59-generic amd64 4.8.0-59.64 [37.4 MB]                                                          
Get:7 http://us.archive.ubuntu.com/ubuntu yakkety-updates/main amd64 linux-image-generic amd64 4.8.0.59.72 [2,348 B]                                                                         
Fetched 72.0 MB in 7min 12s (167 kB/s)                                                                                                                                                       
Selecting previously unselected package linux-headers-4.8.0-59.
(Reading database ... 104895 files and directories currently installed.)
Preparing to unpack .../0-linux-headers-4.8.0-59_4.8.0-59.64_all.deb ...
Unpacking linux-headers-4.8.0-59 (4.8.0-59.64) ...
Selecting previously unselected package linux-headers-4.8.0-59-generic.
Preparing to unpack .../1-linux-headers-4.8.0-59-generic_4.8.0-59.64_amd64.deb ...
Unpacking linux-headers-4.8.0-59-generic (4.8.0-59.64) ...
Preparing to unpack .../2-linux-generic_4.8.0.59.72_amd64.deb ...
Unpacking linux-generic (4.8.0.59.72) over (4.8.0.22.31) ...
Preparing to unpack .../3-linux-headers-generic_4.8.0.59.72_amd64.deb ...
Unpacking linux-headers-generic (4.8.0.59.72) over (4.8.0.22.31) ...
Selecting previously unselected package linux-image-4.8.0-59-generic.
Preparing to unpack .../4-linux-image-4.8.0-59-generic_4.8.0-59.64_amd64.deb ...
Done.
Removing linux-image-4.8.0-22-generic (4.8.0-22.24) ...
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 4.8.0-22-generic /boot/vmlinuz-4.8.0-22-generic
update-initramfs: Deleting /boot/initrd.img-4.8.0-22-generic
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 4.8.0-22-generic /boot/vmlinuz-4.8.0-22-generic
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.12.0-041200-generic
Found initrd image: /boot/initrd.img-4.12.0-041200-generic
Found linux image: /boot/vmlinuz-4.8.0-59-generic
done
...

Nors šis metodas veikia puikiai, patikimiau ir efektyviau naudoti patogų scenarijų, vadinamą „byobu“, kuris sujungia visas aukščiau pateiktas komandas į vieną programą su naudingomis parinktimis, tokiomis kaip nurodyti branduolių skaičių sistemoje.

Įdiekite „byobu“ scenarijų paketą, kuriame pateikiama programa „purge-old-kernels“, naudojama pašalinti senus branduolius ir antraštės paketus iš sistemos.

$ sudo apt install byobu

Tada pašalinkite senus branduolius taip (žemiau esanti komanda leidžia 2 branduolius laikyti sistemoje).

$ sudo purge-old-kernels --keep 2

Taip pat galite skaityti šiuos susijusius straipsnius „Linux“ branduolyje.

  1. Kaip įkelti ir iškrauti branduolio modulius sistemoje „Linux“
  2. Kaip nuolat ir nepertraukiamai pakeisti branduolio vykdymo parametrus

Šiame straipsnyje mes aprašėme, kaip pašalinti senus nenaudojamus branduolio vaizdus Ubuntu ir Debian sistemose. Galite pasidalinti bet kokiomis mintimis pateikdami atsiliepimus iš toliau.