summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Wilder <dwilder@us.ibm.com>2006-05-22 11:22:04 -0700
committerEric W. Biederman <ebiederm@xmission.com>2006-07-27 11:24:13 -0600
commit1387ae740abf3a86e5dded8c9c70f686e949409a (patch)
tree04bf83eab3dccb98d271835665a1881ae462ed46
parent8889df7a1b19aebcc2a9d5f101b1b37aebc721c3 (diff)
- kexec man page
I posted this man page on May 11. It was pointed out to me that the something had trashed the nroff formating. This is a reposting of the man page. (not a patch, just the man page). Thanks -- David Wilder IBM Linux Technology Center Beaverton, Oregon, USA dwilder@us.ibm.com (503)578-3789 Signed-off-by: Maneesh Soni <maneesh@in.ibm.com>
-rw-r--r--kexec/kexec.8263
1 files changed, 207 insertions, 56 deletions
diff --git a/kexec/kexec.8 b/kexec/kexec.8
index daac8b0..d3468fb 100644
--- a/kexec/kexec.8
+++ b/kexec/kexec.8
@@ -1,75 +1,226 @@
-.\" Hey, EMACS: -*- nroff -*-
-.\" First parameter, NAME, should be all caps
-.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
-.\" other parameters are allowed: see man(7), man(1)
-.TH KEXEC 8 "October 13, 2004"
-.\" Please adjust this date whenever revising the manpage.
+.\" Process this file with
+.\" groff -man -Tascii kexec.8
.\"
-.\" Some roff macros, for reference:
-.\" .nh disable hyphenation
-.\" .hy enable hyphenation
-.\" .ad l left justify
-.\" .ad b justify to both left and right margins
-.\" .nf disable filling
-.\" .fi enable filling
-.\" .br insert line break
-.\" .sp <n> insert n+1 empty lines
-.\" for manpage-specific macros, see man(7)
+.TH kexec 8 "April 2006" Linux "User Manuals"
.SH NAME
-kexec \- Tool to load a kernel for warm reboot and initiate a warm reboot
+kexec \- directly boot into a new kernel
.SH SYNOPSIS
-.B kexec
-.RI [ options ] " files" ...
+.B /sbin/kexec
+.B [-v (\-\-version)] [-f (\-\-force)] [-x (\-\-no-ifdown)] [-l (\-\-load)] [-p (\-\-load-panic)] [-u (\-\-unload)] [-e (\-\-exec)] [-t (\-\-type)]
+.BI [\-\-mem\-min= addr ]
+.BI [\-\-mem\-max= addr ]
+
.SH DESCRIPTION
+.B kexec
+is a system call that enables you to load and boot into another
+kernel from the currently running kernel.
+.B kexec
+performs the function of the boot loader from within the kernel. The
+primary difference between a standard system boot and a
+.B kexec
+boot is that the hardware initialization normally performed by the BIOS
+or firmware (depending on architecture) is not performed during a
+.B kexec
+boot. This has the effect of reducing the time required for a reboot.
+.PP
+Make sure you have selected
+.B CONFIG_KEXEC=y
+when configuring the kernel. The
+.B CONFIG_KEXEC
+option enables the
+.B kexec
+system call.
+.SH USAGE
+Using
+.B kexec
+consists of
+
+.RS
+(1) loading the kernel to be rebooted to into memory, and
+.RE
+.RS
+(2) actually rebooting to the pre-loaded kernel.
+.RE
+.PP
+To load a kernel, the syntax is as follows:
+
+.RS
+.B kexec
+.RI \-l\ kernel-image
+.RI "\-\-append=" command\-line\-options
+.RI "\-\-initrd=" initrd\-image
+.RE
+
+where
+.I kernel\-image
+is the kernel file that you intend to reboot to.
.PP
-.\" TeX users may be more comfortable with the \fB<whatever>\fP and
-.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
-.\" respectively.
-\fBkexec\fP allows one to load another kernel from the currently running
-Linux kernel. Normally one would load a kernel, and possibly an initial
-ramdisk, into the currently running kernel using kexec and then initiate
-a warm reboot by executing kexec again with appropriate option.
+Note: Compressed kernel images such as bzImage are not supported by
+.BR kexec .
+Use the uncompressed vmlinux.
+.PP
+Insert the command-line parameters that must be passed to the new
+kernel into
+.IR command\-line\-options .
+Passing the exact contents of /proc/cmdline into
+.I command\-line\-options
+is the safest way to ensure that correct values are passed to the
+rebooting kernel.
+.PP
+The optional
+.I initrd-image
+is the initrd image to be used during boot.
+.PP
+
+.SH EXAMPLE
+.PP
+For example, if the kernel image you want to reboot to is
+.BR /boot/vmlinux ,
+the contents of /proc/cmdline is
+.BR "root\=/dev/hda1" ,
+and the path to the initrd is
+.BR /boot/initrd ,
+then you would use the following command to load the kernel:
+
+.RS
+.B kexec
+.RB \-l\ /boot/vmlinux
+.RB "\-\-append=" "root=/dev/hda1" "\ \-\-initrd=" /boot/initrd
+.RE
+.PP
+After this kernel is loaded, it can be booted to at any time using the
+command:
+
+.RS
+.BR kexec \ \-e
+.RE
+
.SH OPTIONS
-These programs follow the usual GNU command line syntax, with long
-options starting with two dashes (`-').
-A summary of options is included below.
-.TP
-.B \-h, \-\-help
-Show summary of options.
.TP
-.B \-v, \-\-version
-Show version of program.
+.B \-e\ (\-\-exec)
+Run the currently loaded kernel.
.TP
-.B \-f, \-\-force
-Force an immediate kexec without calling shutdown.
+.B \-f\ (\-\-force)
+Force an immediate
+.B kexec
+call, do not call shutdown.
.TP
-.B \-x, \-\-no-ifdown
-Don't bring down network interfaces. (if used, must be last option specified)
+.B \-h\ (\-\-help)
+Open a help file for
+.BR kexec .
.TP
-.B \-l, \-\-load
-Load the new kernel into the current kernel.
+.BI \-l\ (\-\-load) \ kernel
+Load the specified
+.I kernel
+into the current kernel.
.TP
-.B \-p, \-\-load-panic
+.B \-p\ (\-\-load\-panic)
Load the new kernel for use on panic.
.TP
-.B \-u, \-\-unload
-Unload the current kexec target kernel.
+.BI \-t\ (\-\-type= type )
+Specify that the new kernel is of this
+.I type.
.TP
-.B \-e, \-\-exec
-Execute a currently loaded kernel.
+.B \-u\ (\-\-unload)
+Unload the current
+.B kexec
+target kernel.
.TP
-.B \-t, \-\-type=TYPE
-Specify the new kernel is of this type.
+.B \-v\ (\-\-version)
+Return the version number of the installed utility.
.TP
-.B \-\-mem\-min=<addr>
-Specify the lowest memory addres to load code into.
+.B \-x\ (\-\-no\-ifdown)
+Shut down the running kernel, but restore the interface on reload. (If
+this option is used, it must be specified last.)
.TP
-.B \-\-mem\-max=<addr>
-Specify the highest memory addres to load code into.
+.BI \-\-mem\-min= addr
+Specify the lowest memory address
+.I addr
+to load code into.
.TP
-There may be additional options supported on individual architectures. Use --help option to see those options.
-.SH AUTHOR
-kexec was written by Eric Biederman.
+.BI \-\-mem\-max= addr
+Specify the highest memory address
+.I addr
+to load code into.
+
+.SH SUPPORTED KERNEL FILE TYPES AND OPTIONS
+.B Beoboot-x86
+.RS
+.TP
+.B \-\-args\-elf
+Pass ELF boot notes.
+.TP
+.B \-\-args\-linux
+Pass Linux kernel style options.
+.TP
+.B \-d \ (\-\-debug)
+Enable debugging messages.
+.TP
+.B \-\-real\-mode
+Use the kernel's real mode entry point.
+.RE
+.PP
+.B elf-x86
+.RS
+.TP
+.BI \-\-append= string
+Append
+.I string
+to the kernel command line.
+.TP
+.BI \-\-command\-line= string
+Set the kernel command line to
+.IR string .
+.TP
+.BI \-\-initrd= file
+Use
+.I file
+as the kernel's initial ramdisk.
+.TP
+.BI \-\-ramdisk= file
+Use
+.I file
+as the kernel's initial ramdisk.
+.RE
.PP
-This manual page was written by Khalid Aziz <khalid.aziz@hp.com>,
-for the Debian project (but may be used by others).
+.B multiboot-x86
+.RS
+.TP
+.BI \-\-command\-line= string
+Set the kernel command line to
+.IR string .
+.TP
+.BI \-\-module= "mod arg1 arg2 ..."
+Load module
+.I mod
+with command-line arguments
+.I "arg1 arg2 ..."
+This parameter can be specified multiple times.
+.RE
+
+.SH ARCHITECTURE OPTIONS
+.TP
+.B \-\-console\-serial
+Enable the serial console.
+.TP
+.B \-\-console\-vga
+Enable the VGA console.
+.TP
+.B \-\-elf32\-core\-headers
+Prepare core headers in ELF32 format.
+.TP
+.B \-\-elf64\-core\-headers
+Prepare core headers in ELF64 format.
+.TP
+.B \-\-reset\-vga
+Attempt to reset a standard VGA device.
+.TP
+.BI \-\-serial= port
+Specify the serial
+.I port
+for debug output.
+.TP
+.BI \-\-serial\-baud= baud_rate
+Specify the
+.I baud rate
+of the serial port.