In order to save a core image that has been written into swap,
the image must be saved prior to swap being re-mounted during
boot. To accomplish this, the sysinit
startup file needs to be changed. The lkcd source includes a
scripts directory which contains patches
for various sysinit startup scripts. These patches add the
lkcd config and lkcd save
commands to enable crash dumps and to save any existing crash
dumps upon startup.
To force a panic to test you new crash setup, compile the following
code with cc -c -I/usr/src/linux/include panic.c .
After building the panic.o module just
insmod panic.o to panic the kernel.
### panic.c ###########################
#define __KERNEL__
# MODULE
# include init_module(void)
int init_module (void)
{
panic(" panic has been called");
return 0;
}
|
To view your kernel core file lcrash needs
to be invoked with a couple of parameters:
lcrash [ System.map file ] [ dump image ] [ Kerntypes ]
Example:
lcrash /boot/System.map ./dump.1 /boot/Kerntypes
|
It will take a minute to load the kernel image into memory and drop
you into the crash shell. At the crash shell prompt you can type a
? to see the available commands.