Download kexec-tools free.Package: kexec-tools (1:2.0.22-2 and others)
– Download kexec-tools free
RHBA — kexec-tools bug fix update. Updated kexec-tools packages that fix one bug and add one enhancement are now available for Red Hat Enterprise Linux 6. The kexec-tools package contains the /sbin/kexec binary and utilities that together form the user-space component of the kernel’s kexec feature. kexec-tools. Tools for loading replacement kernels into memory. Kexec is a user space utility for loading another kernel and asking the currently running kernel to do something with it. A currently running kernel may be asked to start the loaded kernel on reboot, or . Dec 13, · Custom system call #11 (kexec()) to execute arbitrary code in kernel mode; Allow unprivileged users to call setuid(0) successfully. Works as a status check, doubles as a privilege escalation. (sys_dynlib_load_prx) patch; Disable delayed panics from sysVeri; Short how-to. This exploit is unlike previous ones where they were based purely in software.
Professional IDE best suited to small teams Free trial. Scalable, end-to-end solution for teams of any size Free trial. Get early access to latest features not yet in the main release Learn more. Visual Studio for Mac. Free download. Visual Studio Code. Free download Windows x64 User Installer. Linux x Learn more. Still not sure which tool is best for you? We can help. Visual Studio Code for Windows.
Download Visual Studio Code. Highlights Free code editor Built on open source and runs everywhere Hundreds of programming languages supported. Visual Studio Code for Mac. NET Experience a fast and fluid, modern. Visual Studio Code for Linux. Download Visual Studio Code Linux x Highlights Free code editor Built on open source. Runs everywhere Hundreds of programming languages supported. Visual Studio for Windows.
Professional Enterprise Highlights Free for individual use Code faster, test, debug, deploy any app from one place Visual Studio built-in features empower full development cycle. Learn more How to install just what you need Get started with Visual Studio Start coding using tutorials. All Downloads. Our latest Linux articles. The kexec mechanism has components in the kernel as well as in user space. The kernel provides few system calls for kexec reboot functionality. A user space tool called kexec-tools uses those calls and provides an executable to load and boot the second kernel.
Sometimes a distribution also adds wrappers on top of kexec-tools, which helps capture and save the dump for various dump target configurations. In this article, I will use the name distro-kexec-tools to avoid confusion between upstream kexec-tools and distro-specific kexec-tools code. My example will use the Fedora Linux distribution. The kdump service can be started by executing systemctl start kdump after installation of fedora-kexec-tools. This service then loads the kernel and initramfs at the suitable location within the crash kernel region so that they can be executed upon kernel panic.
If the kernel panics after the kdump service starts, then the capture kernel is executed, which further executes the vmcore save process from initramfs and reboots to a stable kernel afterward. Compilation of kexec-tools source code provides an executable called kexec. The same executable can be used to load and execute a second kernel or to load a capture kernel, which can be executed upon kernel panic.
Pass initramfs using –initrd. A kernel loaded using -l cannot be executed at kernel panic. You must pass -p instead of -l to load the capture kernel that can be executed upon kernel panic. See man kexec for detail about options provided by kexec-tools. Figure 1 shows a flow diagram. Crashkernel memory must be reserved for the capture kernel during booting of the first kernel. See the kernel-parameters documentation for more ways to pass crash kernel arguments.
You can pass kernel and initramfs images to a kexec executable as shown in the typical command of section kexec-tools. The capture kernel can be the same as the first kernel or can be different. Typically, keep it the same. Typically, you keep a different capture initramfs from the first initramfs, because automating a copy of vmcore in capture initramfs is better.
When kexec is executed, it also loads elfcorehdr data and the purgatory executable. Purgatory can be made optional as well. When the first kernel panics, it does a minimal necessary exit process and switches to purgatory if it exists. Purgatory verifies SHA of loaded binaries and, if those are correct, then it passes control to the capture kernel. The capture kernel creates vmcore per the system RAM information received from elfcorehdr. Depending on the initramfs you have used, you can now analyze the dump, copy it to any disk, or there can be an automated copy followed by reboot to a stable kernel.
It also provides an extra flag for the reboot system call, which can be used to boot into second kernel using kexec -e. Its prototype is defined as follows:. User space needs to pass segments for different components, such as kernel, initramfs, etc. Thus, the kexec executable helps in preparing these segments. The rest of the all segment preparation is done by the kernel itself. Its prototype looks like:. The kernel has different architecture-specific ways to accept the command line.
Therefore, kexec-tools passes the command-line through one of the segments like in dtb or ELF boot notes , etc.