Kötü güncellemeden sonra çekirdek nasıl düşürülür (16.04)


20

Ubuntu 16.04 çekirdeğine (4.4.0-89 ve -91) yapılan son yükseltmeler dizüstü bilgisayarımda kötü bir şekilde başarısız oldu. Ne mutlu ki, önceki, çalışan sürümü hala yükledim (4.4.0-57). Şimdilik Grub'un bana bir menü gösterecek şekilde yapılandırıldım ve önyüklemede manuel olarak -57'yi seçiyorum, ancak bu kırılgan görünüyor, muhtemelen bir gelecek için kırılacak sudo apt upgrade.

Sanırım istiyorum:

  • -89 ve -91'i kaldırmak için, bana hiç iyi gelmediklerinden.
  • Yükseltmeler yoluyla devam edecek şekilde -57'yi Grub için varsayılan yapmak.
  • Daha sonra çekirdek yükseltmesi yüklesem bile -57'nin yüklü kalmasını sağlamak için
  • Daha sonra çekirdek güncellemelerini kolayca deneyebilmek için, ancak başarısız olursa -57'ye geri dönün. Birincil endişem -57 otomatik olarak kaldırılıyor.
  • Daha sonra çalışan bir güncelleme bulursam, tüm bunları geri almak ve aşağıdaki çekirdek güncellemelerine geri dönmek için kolay bir yol.

-91 ile kaldırmaya çalışmak sudo apt remove linux-image-4.4.0-91-genericlinux-jenerik ve linux-headers- generic'i kaldırmamı gerektirir. Kötü görünüyor, bu yüzden denemedim.

Genel sorun hakkında çeşitli sorular bulabilirim, ancak hiçbiri tüm hedeflerime hitap etmiyor gibi görünüyor ve çoğu artık daha fazla uyguladıklarını sanmamaya yetecek kadar eski.

Bunu yapmanın en iyi yolu nedir?

Ek : Bu, belirli bir paketin güncellenmesi nasıl önlenir? . Bu cevap sorumun bir kısmını ele alabilir, ancak daha büyük resmi ele almaz.

Genel olarak, sorun çekirdeğin olağandışı bir şekilde ele alınması. Linux-generic ve linux-image-headers'a bağımlı olmaktan başka bir şey olmayan linux-jenerik yoluyla kurulur. Bunlar sırayla sadece linux-linux-image-VERSION-generic ve headers-VERSION-jeneric'e bağımlıdır, sürüm numarasını paket adına çevirmek için dikkate değer paketlerdir (muhtemelen paralel olarak çoklu kurulumu kolaylaştırmak için).

Bu yanıtta özellikle belirtilmeyenler:

  • -89 ve -91'in nasıl kaldırılacağını ele almaz.
  • Daha sonraki güncelleştirmeleri yüklesem bile -57'nin Grub için nasıl varsayılan yapılacağına değinmez.
  • Daha sonraki güncelleştirmeleri yüklesem bile -57'nin yüklü kalmasını nasıl sağlayacağınızı ele almaz. Yanıt, ilgili birkaç paket göz önüne alındığında, bir veya daha fazla paket tutmak olsa bile, hangilerini tutacağım? Linux-jenerik tutma meselesi varsa, önce nasıl eski sürüme geçirebilirim?

Çekirdeklerin dizüstü bilgisayarınızda "başarısız" olması pek olası değildir. Muhtemelen bazı sürücüyü yanlış bir şekilde kurdunuz ve çekirdek yükseltmesinden sonra "başarısız oldu". Herhangi bir grafik sürücüsü yüklediniz mi?
Pilot6

En son çekirdeği ve linux-jenerik başlıklarla kaldırırsanız hedefinize ulaşırsınız. Ama dediğim gibi sorun farklı.
Pilot6

1
"başarısız" hiçbir wifi ve X benim grafik hakkında mutsuz oldu. Her ikisi de Intel entegre ve kullanılmış stok sürücüleridir. Sorun, tam kapanma / güç açma da dahil olmak üzere birden çok yeniden başlatma sırasında devam etmişti. Bu yüzden ciddi bir araştırma yapana kadar amacım bir stopgap'tır. Doğal olarak, ciddi soruşturma için bazı bilgiler toplamaya başladım ve -91 beklendiği gibi çalışmaya başladı. iç çekiyorum şimdilik parmaklarımdan geçeceğim.
Alan De Smet

1
Bu bir kopya değil. Bu sadece bir paketi dondurmakla ilgili değil. Belki de yinelenen bir konudur, ancak önerilen sorunun değil.
Pilot6

Yanıtlar:


19

En son çekirdeği kaldır:

sudo apt remove linux-image-4.4.0-91-generic linux-headers-4.4.0-91-generic

Bu meta paketlerini kaldırmak olacaktır linux-generic, linux-image-genericve linux-headers-generic. Çekirdekler asla yükseltilmez.

Geri almak için koşabilirsiniz

sudo apt install linux-generic

Bu en son çekirdeği kuracak ve çekirdek yükseltmeleri alacak.

linux-genericbir meta paketidir. Boştur, ancak diğer iki meta pakete bağlıdır: linux-image-genericve linux-headers-generic.

Son iki, en son çekirdek görüntüsüne ve başlıklarına işaret eder.

Meta paketleri kaldırırsanız, Linux'tan hiçbir şey kaldırılmaz, ancak çekirdek resmi ve başlıkları güncelleme almaz. Bunları daha sonra istediğiniz zaman yükleyebilirsiniz. En son "gerçek" çekirdek paketlerini çekecekler.

Dolayısıyla çözüm istemediğiniz çekirdek paketlerini ve meta paketleri el ile kaldırmaktır.


3

Pilot6'nın çözümü en iyi çözüm olsa da, daha az sert önlemler alabilirsiniz.

Kişisel olarak istemediğiniz çekirdekleri yazılım merkezinden kaldırır ve daha sonra bu paketleri beklemeye alırım - bkz . Belirli bir paketin güncellenmesi nasıl önlenir?

Bu önemsiz bir değişikliktir ve aşırı sürüş yapabilir veya değişikliği kolayca geri alabilirsiniz.


Hangi paketi tutmayı öneriyorsunuz?
Pilot6

linux-jenerik muhtemelen yeterli, emin değilim. Diğerlerini eklemeniz gerekebilir ve tam çekirdeği belirtmeniz gerekebilir, ama bundan şüpheliyim.
Panther

3
sudo apt-mark hold linux-image-generic linux-headers-genericyapacağım
Panther

1
@ Pilot6 - Hayır, eski çekirdekleri tutabilir ve hangi çekirdeğin önyükleneceğini işaretleyebilirsiniz. askubuntu.com/questions/216398/…
Panther

1
Evet yapabilirsin. Ancak çok karmaşık ve pratik bir anlam ifade etmiyor.
Pilot6
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.