GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak odebrat staré verze jádra ze spouštění na Ubuntu 18.04

Canonical poskytuje pravidelné aktualizace pro systém Ubuntu 18.04, včetně aktualizací jádra, aby bylo možné co nejlépe spravovat zdroje systému. Tento článek vám poskytne několik různých metod k odstranění starých jader ze spouštěcí nabídky vašeho Ubuntu 18.04. Když nainstalujete nové jádro, staré jádro se nesmaže, protože vám to může pomoci zavést systém, pokud uděláte chybu s novým jádrem nebo z nějakého jiného důvodu. Všimněte si, že staré jádro spotřebovává nějaké prostory, které mohou být užitečné pro něco jiného. Někdy potřebujeme aktualizovat jádro kvůli kompatibilitě, protože je zodpovědné za propojení všech aplikací.

Vyhledejte stará jádra

Abyste se vyhnuli chybám s aktuálním zaváděcím jádrem vašeho systému Ubuntu 18.04, nezapomeňte zkontrolovat jeho verzi

# uname -r
4.15.0-23-generic

Než se pokusíte odstranit staré jádro, musíte nejprve zkontrolovat, zda se v systémech nenacházejí stará jádra. Chcete-li to provést, můžete se podívat na grub při spuštění systému

můžete vybrat "pokročilá možnost pro Ubuntu". Aktuální jádro můžete vidět na začátku seznamu se starým jádrem hned po 4.15.0.13- generic

Existuje další metoda, jak zkontrolovat staré jádro v příkazovém řádku. To vám pomůže uvést staré jádro a ne to aktuální

# dpkg -l | grep -E 'linux-image-[0-9]+' | grep -Fv $(uname -r)
ii  linux-image-4.15.0-13-generic    4.15.0-13.14        amd64      Linux kernel image for version 4.15.0 on 64 bit x86 SMP

Můžete vidět, že máte nainstalované staré jádro označené ii. Pokud jste provedli upgrade nebo ruční instalaci, můžete vidět více starých jader. Když zkontrolujete jádro

, objeví se určitý stav
  • ii :znamená, že jádro/balíčky jsou nainstalovány a způsobilé k odstranění.
  • rc :označuje, že jádro již bylo odstraněno.
  • iU :je něco jako varování, které říká NEODSTRAŇOVAT. To znamená, že není nainstalován, ale je ve frontě k instalaci v apt .

Než cokoli uděláte, zkontrolujte stav. Nyní, když jsme našli nainstalovaná některá jádra, nyní se podívejme na různé metody odstranění každého nebo celku.

1) Odstraňte stará jádra v příkazovém řádku

Existuje několik užitečných příkazů pro odstranění starých jader, ať už jste je nainstalovali ručně nebo přímo prostřednictvím aktualizací systému. Normálně jej nainstalujete prostřednictvím pravidelných aktualizací systému, ale z určitých důvodů se můžete rozhodnout pro ruční instalaci.

a) příkaz apt

apt command help k odinstalaci balíčků včetně starých jader, která ve svých systémech Ubuntu 18.04 nepotřebujete. Můžete zkontrolovat ty, které byly automaticky nainstalovány, jak je uvedeno níže

# apt-mark showauto 'linux-image-.*'
linux-image-4.15.0-13-generic
linux-image-4.15.0-23-generic
linux-image-extra-4.15.0-13-generic
linux-image-generic

a můžete zkontrolovat ty, které byly nainstalovány ručně, jak je uvedeno níže

# apt-mark showmanual 'linux-image-.*'

Jak vidíte, nemáme ručně nainstalováno žádné jádro. Všechna stará jádra můžete odstranit pomocí odstranit parametr, jak je uvedeno níže:

# apt remove linux-image-4.15.0-13-generic
Reading package lists... Done
Building dependency tree 
Reading state information... Done
The following packages will be REMOVED:
 linux-image-4.15.0-13-generic* linux-image-extra-4.15.0-13-generic
....
....
you may need to re-run your boot loader[grub]

Když odebíráte jádro, ujistěte se, že aktualizujete grub, abyste viděli, zda se při generování grub nevyskytla nějaká chyba

# update-grub
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.15.0-23-generic
Found initrd image: /boot/initrd.img-4.15.0-23-generic
Found memtest86+ image: /boot/memtest86+.elf
Found memtest86+ image: /boot/memtest86+.bin
done

Nyní můžete znovu zkontrolovat, zda byl odstraněn

# dpkg -l | grep -E 'linux-image-[0-9]+' | grep -Fv $(uname -r)
rc  linux-image-4.15.0-13-generic    4.15.0-13.14     amd64      Linux kernel image for version 4.15.0 on 64 bit x86 SMP

Můžete vidět stav rc které ukazují, že to bylo odstraněno. Můžete se také podívat na zaváděcí nabídku a vidět, že se zobrazuje pouze aktuální zaváděcí jádro

Můžete také použít apt autoremove příkaz, ale měli byste si všimnout, že tento příkaz se používá k odstranění balíčků, které byly automaticky nainstalovány, aby vyhovovaly závislostem jiných balíčků a již nejsou potřeba jako závislosti. Zkontrolujte tedy, zda v seznamu balíčků k odstranění není balíček, který potřebujete odstranit

# apt autoremove --purge

b) příkaz dpkg

Můžete také použít dpkg příkaz k odstranění konkrétního jádra z vašeho systému Ubuntu 18.04. Tentokrát budete muset uvést balíček a další závislosti

# dpkg --purge linux-image-4.15.0-13-generic linux-image-extra-4.15.0-13-generic 
(Reading database ... 165680 files and directories currently installed.)
...
...
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.15.0-23-generic
Found initrd image: /boot/initrd.img-4.15.0-23-generic
Found memtest86+ image: /boot/memtest86+.elf
Found memtest86+ image: /boot/memtest86+.bin
done
...

Můžete znovu zkontrolovat stopy, ale uvidíte, že jsou zcela odstraněny, protože nebudete mít výstup ukazující, že byly odstraněny (rc)

# dpkg -l | grep -E 'linux-image-[0-9]+' | grep -Fv $(uname -r)

Můžete se také podívat na grub

c) Pomocí skriptu

Našli jsme zajímavý interaktivní skript Kivisade na Github, který vám pomůže odstranit stará jádra. Používá příkaz dpkg, ale zajímavá věc je skutečnost, že uvádí jádra k odstranění a ptá se na váš názor. Nejprve nainstalujte git

# apt install git

Nyní naklonujte projekt

# git clone https://github.com/kivisade/kernel-purge.git
Cloning into 'kernel-purge'...
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 3
Unpacking objects: 100% (3/3), done.

zadejte do složky a udělte oprávnění

# cd kernel-purge && chmod +x kernel-purge.sh

Nyní spusťte skript

# ./kernel-purge.sh 
Running kernel version is: 4.15.0-23
The following (unused) KERNEL packages will be removed:
linux-headers-4.15.0-13
linux-headers-4.15.0-13-generic
linux-image-4.15.0-13-generic
linux-image-extra-4.15.0-13-generic
Do you want to continue [yN]? y
Reading package lists... Done
Building dependency tree 
Reading state information... Done
The following packages will be REMOVED:
 linux-headers-4.15.0-13* linux-headers-4.15.0-13-generic*
 linux-image-4.15.0-13-generic* linux-image-extra-4.15.0-13-generic*
0 upgraded, 0 newly installed, 4 to remove and 0 not upgraded.
After this operation, 335 MB disk space will be freed.
(Reading database ... 168812 files and directories currently installed.)
...
...
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.15.0-23-generic
Found initrd image: /boot/initrd.img-4.15.0-23-generic
Found memtest86+ image: /boot/memtest86+.elf
Found memtest86+ image: /boot/memtest86+.bin
done
...
...

Nyní můžete zkontrolovat, zda byla jádra účinně odstraněna. Nebudete mít výstup, takže stará jádra byla odstraněna

# dpkg -l | grep -E 'linux-image-[0-9]+' | grep -Fv $(uname -r)

2) Použijte grafické nástroje k odstranění starých jader

K odinstalaci balíků jádra můžete také použít grafický nástroj. Nástroj vás během procesu požádá o heslo, protože potřebujete oprávnění správce.

a) Čistič Ubuntu

Ubuntu Cleaner je uživatelsky přívětivý systémový nástroj určený k čištění mezipaměti prohlížeče, odstraňování nepotřebných aplikací a získávání snímků ze starých jader. Ubuntu může být užitečné, pokud chcete odstranit:

  • Mezipaměti aplikací, které zahrnují většinu hlavních prohlížečů
  • Apt cache
  • Staré jádro
  • Nepotřebné balíčky

Balíček není standardně přítomen v oficiálním úložišti, takže musíme přidat PPA. Pamatujte, že na Ubuntu 18.04 nemusíte po přidání PPA aktualizovat mezipaměť balíčků, protože se automaticky spouští. Přidejte tedy PPA, jak je uvedeno níže

~# add-apt-repository ppa:gerardpuig/ppa
 Official Ubuntu Cleaner stable repository
 More info: https://launchpad.net/~gerardpuig/+archive/ubuntu/ppa
Press [ENTER] to continue or Ctrl-c to cancel adding it.

Hit:1 http://cm.archive.ubuntu.com/ubuntu bionic InRelease                    
Get:2 http://cm.archive.ubuntu.com/ubuntu bionic-updates InRelease [83.2 kB]  
Get:3 http://security.ubuntu.com/ubuntu bionic-security InRelease [83.2 kB]   
Get:4 http://cm.archive.ubuntu.com/ubuntu bionic-backports InRelease [74.6 kB]
Get:5 http://security.ubuntu.com/ubuntu bionic-security/main amd64 DEP-11 Metadata [204 B]
...
...

Nyní můžete nainstalovat nástroj

# apt install ubuntu-cleaner
Reading package lists... Done
Building dependency tree 
Reading state information... Done
The following additional packages will be installed:
 libpython-stdlib python python-apt python-aptdaemon
...
...

Poté spusťte software

Poté vyberte sekci starého jádra a vyberte jádra, která chcete odstranit

Budete požádáni o heslo a proces se spustí

Nyní můžete zkontrolovat, zda jsou jádra stále přítomna. Můžete vidět stav, který označuje, že je odstraněn

# dpkg -l | grep -E 'linux-image-[0-9]+' | grep -Fv $(uname -r)
rc  linux-image-4.15.0-13-generic    4.15.0-13.14     amd64      Linux kernel image for version 4.15.0 on 64 bit x86 SMP

b) Synaptické

Synaptic je grafické rozhraní pro Advanced Packaging Tool (APT), které používá systém založený na Debianu pro instalaci balíčků/softwaru. Není to uživatelsky přívětivý nástroj, takže jeho používání může být velmi matoucí, proto musíte být velmi opatrní.

# apt install synaptic
Reading package lists... Done
Building dependency tree 
Reading state information... Done
The following additional packages will be installed:
 docbook-xml libept1.5.0 libgtk2-perl libpango-perl librarian0 rarian-compat
 sgml-base sgml-data xml-core

Nyní spusťte aplikaci

Nyní přejděte do Sekce -> Jádro a moduly vyberte jádra, která chcete odstranit, a označte úplné odstranění. Ujistěte se, že jste vybrali správná jádra ze seznamu

Požádá vás o potvrzení

Můžete vidět, že automaticky označí závislost. Použít k odstranění jader

Požádá o potvrzení. Použít

Můžete vidět okna ukazující proces. Pokud se podíváte pozorně, na konci uvidíte, že grub byl vygenerován a stará jádra nejsou přítomna.

Závěr

Nyní víte, jak můžete odstranit staré jádro ze spouštěcího systému vašeho Ubuntu 18.04. Měli byste si povšimnout, že se doporučuje smazat celé staré jádro, protože pokud z jakéhokoli důvodu nemůžete zavést aktuální jádro. Doporučilo se tedy ponechat si alespoň dvě nebo raději tři jádra včetně toho nejnovějšího. Důvodem doporučení je, že budete mít alespoň jedno nebo dvě další jádra, ze kterých budete moci zavést.

Přečtěte si také

  • Jak používat nástroje BCC Kernel Tracing pro analýzu výkonu Linuxu
  • Jak odebrat a přidat PPA na Ubuntu 18.04
  • 6 příkazů k vymazání terminálu Linux

Ubuntu
  1. Jak nainstalovat jádro 5.13 v Ubuntu 18.04 z úložiště 20.04

  2. Jak odinstalovat aria2 z Ubuntu

  3. Jak odstraním kód VS a nastavení z Ubuntu?

  1. Jak odinstalovat nebo odebrat softwarové balíčky z Ubuntu

  2. Jak nainstalovat Ubuntu 16.04 z SD karty?

  3. Jak odstranit heslo ze souboru pdf v Ubuntu

  1. Jak odstranit stará jádra na Ubuntu 16.04, 18.04 a 19.04

  2. Jak upgradovat z Ubuntu 16.04 na Ubuntu 18.04

  3. Jak odstranit webový server Apache z Ubuntu