Kexec
Šta je Kexec?
Help za kexec u kernelu kaže sledeće:
kexec is a system call that implements the ability to shutdown your current kernel, and to start another kernel. It is like a reboot but it is independent of the system firmware.
Kexec nije nista drugo nego jedna vrsta software reboot opcije. Pomoću njega možete direktno posle "gasenja" jednog kernela automacki da startuje drugi kernel bez da pri tome morate da prođete startovanje računara kroz bios kao što je to normalna procedura.
Šta je potrebno?
- sys-apps/kexec-tools
- >= 2.6.13 kernel sa uključenom kexec podrškom
Konfiguracija Kernela i uključivanje kexec podrške:
Symbol: KEXEC [=y] Prompt: kexec system call Defined at arch/i386/Kconfig:786 Location: --> Processor type and features --> [*] kexec system call
Posle ubacivanja kexec podrške memorisati kernel konfiguraciju, prekompajlirati kernel i ponovo startovati sistem.
Pošto je kernel sređen potrebno je još instalirati kexec-tool paket.
Konfiguracija za kexec
Konfiguracija se nalazi u /etc/conf.d/kexec i ona izgleda ovako:
# Boot partition
#BOOTPART="/boot"
# Kernel name
KNAME="vmlinuz"
# Root partition (should be autodetected)
ROOTPART="/dev/sda3"
# Kernel parameters (should be autodetected)
#KPARAM="splash=silent,theme:emergence"
# Initrd
#INITRD="/boot/fbsplash-emergence-1024x768"
# Load kexec kernel image into memory during shutdown instead of bootup
# (default: yes)
#LOAD_DURING_SHUTDOWN="yes"
KNAME je ime kernela koji će se startovati dok je ROOTPART putanja particije gde se nalazi /boot direktorijum kao i kernel.
Init skript
Init skript se nalazi u /etc/init.d/kexec i pokrećemo ga sa:
# /etc/init.d/kexec start
Da bi se kexec startovao automacki pri svakom startovanju sistema potrebno je uraditi sledeće:
# rc-update add kexec boot
E sad je došlo na red i da probamo kako to i radi :o)
# reboot
Kako odraditi standardnu reboot komandu bez upotrebe exec tools-a?
# /etc/init.d/kexec stop
Posle zaustavljanja kexec servisa, normalno odraditi reboot naredbu.
# reboot
Lepo objašnjenje kako kexec radi:
http://www-128.ibm.com/developerworks/linux/library/l-kexec.html
Document Actions