Jak usunąć niedziałające jądro po aktualizacji?

15

Mam. proste pytanie. Po zaktualizowaniu jądra nie mogłem się uruchomić (utknąłem na fioletowym ekranie), chyba że wybrałem stare jądro. Jak więc usunąć nowe jądro z synaptic. Jak mam to zrobić bezpiecznie? Jestem w Kwantowym Kwetzerze. Moje jądro to 3.5.0-40. Działające jądro to 3.5.0-39. Ponadto, jak mogę zatrzymać wyświetlanie aktualizacji jądra w menedżerze aktualizacji? Dzięki.

Dave
źródło
jaka jest wersja jądra? chcesz usunąć?
mojo706
Moje jądro to 3.5.0-40
Dave
1
Jeśli wolisz, aby odpowiedzi zawierały informacje o zapobieganiu ponownej instalacji nowego jądra z innymi aktualizacjami , możesz chcieć dołączyć to do pytania.
Eliah Kagan
Myślę, że nie jest rozsądne usuwanie jądra lub zatrzymywanie aktualizacji jądra, ponieważ są to zwykle aktualizacje bezpieczeństwa. Zobacz to pytanie dotyczące lepszej praktyki.
jarno

Odpowiedzi:

28

Aby bezpiecznie usunąć niechciane jądro, otwórz sesję terminala i uruchom polecenie:

Znajdź nazwę pakietu jądra

dpkg -l | grep linux-image

W momencie pisania tego tekstu amd64/x86_64 nazwa architektury brzmiała:linux-image-$(uname -r)-generic

W przypadku niepodpisanych obrazów jądra, takich jak te tworzone przez sterowniki NVIDIA, obraz może wyglądać następująco: linux-image-unsigned-4.20.17-042017-generic

Usuń (wyczyść - usuń również wszystkie pliki konfiguracyjne)

sudo apt-get purge linux-image-3.5.0-40-generic

UWAGA: W przypadku systemu Ubuntu 18.04 LTS lub nowszego możesz również chcieć usunąć dowolny pakiet linux-moduleslub linux-headerstę samą wersję, aby zaoszczędzić miejsce na dysku / zachować system.

Terry Wang
źródło
Och, nie muszę po tym robić sudo update-grub?
Dave
Skrypt postrm pakietu zaktualizuje dla ciebie gruba, gdy go usuniesz (wyczyścisz) ;-)
Terry Wang
Dzięki, Terry, że naprawiłem mój problem. Jak teraz zachować aktualizacje jądra poza menedżerem aktualizacji?
Dave
sudo apt-get update && apt-get dist-upgrade -y, nie jestem pewien, czy masz linux-current-genericlub linux-image-generic-lts-raringnie wydania LTS.
Terry Wang,
2
sudo apt-get remove linux-image-3.5.0-40*.

Zasugeruję, abyś zawsze miał dostęp do co najmniej jednego starszego jądra, na wypadek, gdybyś musiał uruchomić się z niego z powodów, których w tej chwili się nie spodziewałeś.

rzemieślnik
źródło
Chodzi mi o zachowanie jądra. Bardzo ważne rzeczy. Mam jeszcze jednego oprócz tego. Ty wypróbuję to jutro i odeśle z powrotem.
Dave
0

Żadna inna odpowiedź na to pytanie nie wydaje się poprawna. Pełna odpowiedź to połączenie obu z pewnymi dodatkowymi poprawkami;

sudo apt-get purge *4.18.0-21*

Were 4.18.0-21to numer twojego jądra, użyj go, ls /bootaby go zobaczyć.

To właśnie mi zrobiło (chociaż musiałem dwukrotnie uruchomić podobne polecenie, aby się go pozbyć /lib/modules/4.18.0-21-generic).

Użyj tego polecenia ostrożnie, aby upewnić się, że nie usuwasz niczego niezbędnego.

Co ciekawe, w moim przypadku również linux-headers-generic-hwe-18.04został usunięty, a kiedy próbowałem go ponownie zainstalować, chciał ponownie zainstalować najnowsze jądro, więc nie zrobiłem tego. Badania wykazały, że był on częścią jądra 4.18.0-21; https://packages.ubuntu.com/bionic-updates/linux-headers-generic-hwe-18.04

Roel Van de Paar
źródło