Jak zaktualizować jądro bez restartu? (alternatywa ksplice)


10

Jak zaktualizować działające jądro bez restartu? Wiem o Oracle ksplice, ale nie jest darmowy i obsługuje tylko dystrybucje, których nie używam. Czy istnieją alternatywy dla ksplice?

Odpowiedzi:


4

Podstawowa technologia jest bezpłatna i stanowi część jądra głównego; Oracle po prostu zapewnia gotowe obrazy. Możesz budować własne łaty ksplice, aby dynamicznie ładować się do własnego jądra.


To miłe! Ale gdzie jest w menuconfig lub jak nazywa się w .config?
Alex Bolotov

Zobacz pakiet ksplice.
psusi

Hej, opublikowałem kontynuację na Ask Ubuntu, na którą możesz być w stanie odpowiedzieć (lub pomóc): askubuntu.com/questions/193069/...
Oli


0

Jedną z alternatyw ksplicejest kexec(). Zamiast łatać jądro Linuksa podczas działania, polecenie to zasadniczo zastępuje bieżące jądro nowym, bez ponownego uruchamiania systemu.

Aby to było dostępne, musi być włączone jako opcja kompilatora w jądrze twojej dystrybucji - to znaczy, możesz kompilować jądra bez tej funkcjonalności, więc musisz sprawdzić, czy jest dostępny i / lub włączyć go samodzielnie .


5
Skuteczne zastąpienie obecnego jądra nowym jest restartem, bez kłopotów z przechodzeniem przez moduł ładujący. Nadal musisz zapisać swoją pracę, zamknąć i ponownie uruchomić aplikacje.
psusi

(debian / ubuntu) narzędzia kexec wydają się obecnie nie być przeniesione do obsługi systemd; i o ile wiem, żadne obecne repozytorium pakietów nie obsługuje żadnego init oprócz systemd; więc Kexec jest obecnie poza stołem w Debianie;
ThorSummoner

@psusi Wierzę, że kexec unika faktycznego wyłączania sprzętu, tak że płyta główna nie musi poświęcać czasu na test POST, ani żadne urządzenie pci nie musi inicjować się od zera - funkcja, której bardzo poszukiwałem, gdy sprzęt zabiera kilka minut do ostygnięcia boot: cry:
ThorSummoner
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.