Sunucumun çekirdeğini yeniden başlatmadan nasıl yükseltebilirim?


29

Bu yüklenen bir soru çünkü zaten farkındayım ve ksplice ile ilgileniyorum . Sorun şu ki, Oracle tarafından satın alındıklarından, tekliflerden çok sayıda sunucu dağıtımı almak zorunda kaldılar. Cevap bir zamanlar olduğu kadar basit değil.

Fark Unix.SE bir soru devletler bu:

Kendi çekirdeğinize dinamik olarak yüklemek için kendi ksplice düzeltme eklerinizi oluşturabilirsiniz.

Harika! Ama nasıl?!

Ücretsiz ksplicepaketi masaüstümdeki ( ksplice-uptrackücretsiz olmayan) depoya yükledim ve şimdi güncellemeler oluşturmak ve uygulamak istiyorum. Süreç nedir? Süreci otomatikleştirmek için herhangi bir komut dosyası var mı?

Dahası, yeniden başlatmaya gerek duymadan yükseltmek için gerekli olan tüm makineler çekirdekte (ve ksplicepakette) oturuyorsa , neden dünyada varsayılan olarak bundan faydalanmıyoruz?


Son zamanlarda kGraft açıklandı . Kabaca aynı sonuç gibi görünüyor, bu yüzden buna ilişkin bir cevabınız varsa, bununla da mutlu olurum. Halen serbest bırakılmasından birkaç ay sonra.


Not 1: ksplice dışında bir çözüm için mutluyum ama aynı şeyi sunmak zorunda: Sunucuyu yeniden başlatmadan uygulanabilecek çekirdeğe yapılan güncellemeleri yayınlamak.

Not 2: Tekrar söyleyeceğim; Ana ksplice "hizmet" Ubuntu Sunucusunu desteklemiyor. Alıyordu ama artık yok. Ksplice kullanmak istediğimden bahsettiğimde, ksplicepaketteki açık kaynak araçlarından bahsediyorum . ksplice-uptrackSözünü ettiğim herhangi bir cevap muhtemelen yukarıda bahsettiğim "hizmet" ile doğrudan bütünleşen kısım olduğundan dolayı benim peşimdekiler değildir.

Yanıtlar:



6

Ksplice hakkında fazla bir şey bilmiyorum ama bundan bahsedeceğimi düşündüm - duydun kexecmu? İhtiyacın olan bu olabilir.

Soruyla ilgili olarak, neden bunu varsayılan bir mekanizma olarak benimsemedik? Peki, hala çalışıyorken mevcut çekirdeğin belleğinin üzerine yazmak, olası sorunlara neden olabilir. Ayrıca donanım aygıtlarının her zaman mümkün olmayan iyi tanımlanmış bir durumda olmasını bekler.

Gereksinimlerinize uygun olup olmadığına karar vermek için IBM geliştirici çalışmaları makalesine göz atabilirsiniz .


5
+1 için kexec, ancak özünde sıcak bir yeniden başlatma - IE çekirdek yeniden sıfırdan yüklenir, bu nedenle init komut dosyaları vb. Hala çağrılır. Bu teknik olarak bir yeniden başlatma değildir , ancak çalışan servisler duracaktır.
jackweirdy

Evet, farkındayım ama ksplice'de bunun nasıl farklı olduğunu bulmak için hiçbir şey okumadım.
Marcin Kaminski

1
Göre en.wikipedia.org/wiki/Ksplice , ksplicehafıza hâlâ iken çalışan çekirdekten bir ikil yama uygular
jackweirdy

2
İlginç olduğundan, bu konuda biraz daha okumaya ihtiyacım var. Peki sıfırlamadan ne kadar çalışma süresi kazanmaya çalışıyorsunuz? : D
Marcin Kaminski

3

ksplice, yeniden başlatmaya gerek kalmadan çekirdeğin değişmesine izin verecektir. Uptrack, ksplice içerisinde çalışır ve /etc/uptrack/uptrack.conf dosyasında düzenlenebilir bir config dosyasına sahiptir.


2

Her ikisi de ana Linux çekirdeğine dahil edilmek üzere gönderilmiş Ksplice'ye açık kaynaklı birkaç alternatif var. Hangisinin çekirdeğe döneceğini söylemek için çok erken, ama yeterince cesursan hala deneyebilirsin:

İkisi hakkında daha fazla bilgiyi burada bulabilirsiniz: SUSE Yazıları kGraft, Red Hat Yazıları Kpatch Yamaları


1

Arch Linux wiki'nin talimatları vardı: https://wiki.archlinux.org/index.php/ksplice

Dağıtıma özgü görünen tek bölüm ksplice'nin nasıl kurulacağıdır. Görünüşe göre çoktan anladığına göre, bunun seni yoluna sokması gerektiğini düşünüyorum.


1
Bu soruyu teorik olarak cevaplayabilse de , cevabın temel kısımlarını buraya eklemek ve referans için bağlantıyı sağlamak tercih edilir.
Eric Carvalho 04

0

16 Temmuz 2015'den beri "Oracle Ksplice, Fedora ve Ubuntu Desktop Editions'ta ücretsiz olarak sunuluyor."

Sadece indirilen .deb dosyasını yüklemek buradan alabilirsiniz .

Eğer denerseniz sudo dpkg -i ksplice-uptrack.deb, bağımlılıkları düzeltmeniz gerekebilir sudo apt-get install -f.

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.