kexec
kexec ermöglicht es, in einem laufenden System einen neuen Kernel zu laden, ohne den normalen Bootvorgang (BIOS und Bootloader) nochmal durchlaufen zu müssen. Damit kann man einen neuen Kernel schnell laden, was für hochverfügbare Server wichtig ist.
Inhaltsverzeichnis |
[Bearbeiten] Installation
[Bearbeiten] Kernel
| Linux Kernel Konfiguration: |
Processor type and features --->
[*] kexec system call
|
[Bearbeiten] Software
Es muss sys-apps/kexec-tools installiert werden. Vor der Installation sollten die aktiven USE Flags geprüft werden. Die USE Flags von sys-apps/kexec-tools sind:
- lzma - Aktiviert Unterstützung für LZMA komprimierte Kerneldateien.
- xen - Aktiviert Xen Unterstützung.
- zlib - Aktiviert Unterstützung für zlib komprimierte Kerneldateien.
Nun installiert man kexec-tools:
[Bearbeiten] Konfiguration
kexec wird mit der /etc/conf.d/kexec-Datei konfiguriert. Die Variablen dort haben die folgende Bedeutung:
- BOOTPART - Pfad zum /boot Ordner. Muss üblicherweise nicht gesetzt werden.
- KNAME - Name der Kerneldatei im /boot Ordner.
- ROOTPART - Gerätedatei der /-Partition. Wird normalerweise automatisch ermittelt.
- KPARAM - Kernelparameter, mit denen der neue Kernel gebootet werden soll. Muss nicht gesetzt werden, dann werden die bisherigen Parameter übernommen.
- INITRD - Name der Initrd-Datei (falls man eine verwendet).
- LOAD_DURING_SHUTDOWN - Lädt den neuen Kernel schon beim Herunterfahren in den Arbeitsspeicher (Standard: yes).
Damit kexec genutzt werden kann, muss der Hintergrunddienst gestartet werden. Auch kann man ihn automatisch beim Booten starten lassen:
Nach einem Kernel Update muss kexec neu gestartet werden, es wird sonst bei einem Reboot mit dem alten Kernel gebootet:
[Bearbeiten] Bedienung
Der Rechner kann ganz normal neu gestartet werden. Anstatt eines kompletten Neustarts wird nun allerdings das BIOS und der Bootloader ausgelassen.