Logo Blogo

Riavviare solo il kernel: kexec

Pubblicato: 16 set 2006 da Andrea de Palo

Linuxkexec è una feature dei recenti kernel 2.6 che vi permette di riavviare esclusivamente il kernel, saltando i controlli effettuati dal bios e dal bootloader.

Non è proprio una funzionalità essenziale però è molto cool Smile

Ecco come utilizzare kexec su un sistema ArchLinux (ma la procedura dovrebbe essere identica anche per altre distribuzioni)…


Installate i kexec-tools

pacman -S kexec-tools

Dopodichè, da root, digitate

kexec -l /kernel/da/avviare –initrd=/initrd/da/avviare –command-line=”`cat /proc/cmdline`”

Ora non vi resta che riavviare Smile

1 stelle2 stelle3 stelle4 stelle5 stelle (nessun voto)
condividi condividi
18 commenti

Commenti dei lettori

(Inserisci un commento - Nascondi commenti anonimi)
  • Profilo di ilgufo

    ilgufo

    16 set 2006 - 16:29 - #1
    0 punti
    Up Down

    wow forte

  • vime

    16 set 2006 - 21:00 - #2
    0 punti
    Up Down

    è possibile avviare una versione diversa del kernel attualmente in esecuzione?
    L’uptime viene resettato?

  • Profilo di Andrea de Palo

    Andrea de Palo

    16 set 2006 - 21:25 - #3
    0 punti
    Up Down

    Certo, basta indicare un kernel ed, eventualmente, l’initrd associato.

    L’uptime credo venga resettato.

  • vime

    17 set 2006 - 11:32 - #4
    0 punti
    Up Down

    Interessante…è da provare

  • ...

    17 set 2006 - 12:10 - #5
    0 punti
    Up Down

    È come SystemStarter in Mac OS X dal 2000 solo che riavvia anche certi elementi dell’interfaccia grafica

  • Profilo di Andrea de Palo

    Andrea de Palo

    17 set 2006 - 13:33 - #6
    0 punti
    Up Down

    Questo dovrebbe essere dovuto al fatto che OS X è basato su un microkernel (a differenza di Linux)…resta il fatto che con kexec è possibile caricare un kernel Linux differente

    Se non ricordo male un reboot simile era possibile anche con Windows 9.X, semplicemente tenendo premuto il tasto shift (ovviamente riavviava lo stesso kernel).

  • Profilo di ilgufo

    ilgufo

    17 set 2006 - 13:50 - #7
    0 punti
    Up Down

    continua a darmi sempre lo stesso errore…

    http://rafb.net/paste/results/751eoQ18.html

    OS: xubuntu (ma anche su debian sid)

  • Profilo di Andrea de Palo

    Andrea de Palo

    17 set 2006 - 14:00 - #8
    0 punti
    Up Down

    Che kernel usi? Sembra che kexec non sia inclusa…

    Su ArchLinux dovrei avere un 2.6.17.qualcosa

  • Profilo di Andrea de Palo

    Andrea de Palo

    17 set 2006 - 14:01 - #9
    0 punti
    Up Down

    Se non ricordo male kexec è considerata ancora sperimentale quindi è possibile che non sia inclusa nel kernel di default…prova a ricompilare

  • Treviño

    17 set 2006 - 19:08 - #10
    0 punti
    Up Down

    Scusa, ma perché alla fine hai scritto “Ora non vi resta che riavviare”? Intendi solo il kernel o la macchina, perché se intendi la macchina ho capito male io come funziona questo aggeggino… :o

    Non permette una sorta di “cambio” di kernel in realtime?

  • Profilo di Andrea de Palo

    Andrea de Palo

    17 set 2006 - 21:32 - #11
    0 punti
    Up Down

    kexec permette di riavviare il sistema saltando il BIOS ed il bootloader; il kernel da caricare dopo il reboot è quello indicato tramite CLI

  • Treviño

    18 set 2006 - 01:43 - #12
    0 punti
    Up Down

    Mh… Quindi, appunto, cambia molto poco in termini di risparmio di tempo…
    Dico questo perché nel link dell’IBM citato si sottolinea come sia una cosa molto utile per chi deve riavviare il PC tante volte al giorno, come se questo sistema gli permettesse di evitare la cosa… Boh, allora non ne capisco troppo i vantaggi…

  • Profilo di mad_max

    mad_max

    18 set 2006 - 09:00 - #13
    0 punti
    Up Down

    E’ come se il kernel attuale diventasse il bootloader, che carica il kernel successivo.
    La difficoltà di implementazione è dovuta al fatto che la macchina non è stata appena accesa quindi alcune periferiche sono sporche e vanno resettare via software ed è necessario una revisione di certi drivers.

  • Daniele Minciaroni

    18 set 2006 - 15:47 - #14
    0 punti
    Up Down

    Parlo per chi ha poca esperienza di Server.
    I Dell 1855 (ad esempio) impiegano mediamente 4 minuti per un reboot dal riavvio alla comparsa del menù del Grub.
    Ho poi un sistema con 8 Xeon con 16 Gb di ram che impiega quasi 10 minuti (a causa dei vari bios dei controller SCSI, nonostante abbia impostato il chek veloce della ram).

    In queste condizioni ti passa la voglia di ottimizzare il kernel. :)
    Questo tool potrebbe essere una mano santa!

  • Profilo di ilgufo

    ilgufo

    18 set 2006 - 18:24 - #15
    0 punti
    Up Down

    @Andrea: scusa per il ritardo della risposta..
    su dapper uso il 2.6.15-26,
    su debian sid uso 2.6.17.non-mi-ricordo

    dopo provo a ricompilarlo cosi vedo…

    ciao!

    ilgufo

  • Profilo di Andrea de Palo

    Andrea de Palo

    19 set 2006 - 12:11 - #16
    0 punti
    Up Down

    @Daniele

    Se non ricordo male kexec è stata implementata propri per tagliare i tempi di reboot su macchine server

  • ossblog

    14 mar 2007 - 00:41 - #17
    0 punti
    Up Down

    […] […]

  • 0 punti
    Up Down

    […] Red Hat ha annunciato la disponibilità della prima beta per la famiglia di prodotti basati su Red Hat Enterprise Linux 5 e le novità sembrano decisamente orientate sulla stabilizzazione delle feature già presenti: consolidamento della virtualizzazione ( supporto ad Itanium2, supporto a VM guest a 32bit su host a 64, aggiornamenti per libvirt ), miglioramento delle funzioni di risparmio energetico, aggiornamenti per il sottosistema SATA e per EXT3 ( che ora supporta filesystem di 16 TB ), supporto a kexec / kdump per i sistemi virtualizzati, miglioramenti nel supporto ad IPv6, backport del nuovo stack 802.11, aggiornamenti per Samba, supporto alle smartcard in SSH e molto altro ancora. […]

L'email è richiesta ma non verrà mostrata ai visitatori.
Commenta questo articolo

Registrati per riservare il tuo nickname preferito su tutti i blog di Blogo e per caricare il tuo avatar. Se sei già registrato, effettua il login per usare il tuo nickname.

Si No
I commenti sono sottoposti alle linee guida per la moderazione.

Anteprima del commento