
02-23-2006
|
|
Hog Hunter
|
|
|
Join Date: Apr 2002
Location: On my motorcycle
Posts: 3,039
|
|
SCO Tech Notes - Saving crash image on Unixware
Quote:
Problem
My UnixWare 7 system panics. What are the steps for saving the dumpfile?
Note
The information below is often necessary for SCO Technical Support to be able to assist you with a system panic.
In addition, make sure to have a list of all of the hardware in the computer (make and model) as well as the versions of any third party drivers being used, a list of third party software in the system and any messages relating to errors on the console or in the /usr/adm/syslog file.
Solution
When the system panics, you should see a message similar to the following:
Panic: "some information"
"some address information"
Saving system memory image for crash analysis.
# = scanning memory, . = dump to disk
(press any key to abort dump)
#...........
System memory dump complete.
System has halted and may be powered off (Press any key to
reboot)
Restart the system and enter Maintenance mode.
To enter Maintenance mode:
At the white screen displaying the UnixWare 7 logo press the "space" key. You should now see the following:
Bootstrap Command Processor
Ready for boot commands...[? for help]
[boot]
At the [boot] prompt, type:
INITSTATE=s <Enter>
You will get another [boot] prompt. At this point, type:
go <Enter>.
The UnixWare 7 logo screen will display again and the system will come up to the following prompt:
UX:dumpcheck: INFO: There is a system dump memory image in a
swap device.
Do you want to save it? (y/n)>
Enter: y <Enter>
The next prompt will be:
Do you want to save it on:
1 - low density 5.25" (360k) diskettes
2 - high density 5.25" (1.2M) diskettes
3 - low density 3.5" (720k) diskettes
4 - high density 3.5" (1.44M) diskettes
t - Cartridge tape
f - file [/dumpfile]
n - no, QUIT
>
At the ">" prompt enter the appropriate choice (which will probably be "t" for tape or "f" for saving to the hard drive).
You will be prompted (y/n) to compress the dumpfile. If you answer yes you will need to uncompress the file, using the standard compress/uncompress utility, before you will be able to run crash against the dumpfile. If you choose not to compress the dumpfile at this time you will be able to compress it using the compress utility after running crash.
Once the dump has been saved the following prompt will come up:
Type Ctrl-d to proceed with normal startup,
(or give root password for Single User Mode):
At this prompt you can either enter single-user mode or do a normal startup; either way the dump image is preserved.
If you choose to save the dumpfile to the hard drive, it will be in the root directory under the filename "dumpfile".
You should create a directory for saving the dumpfile and then move the dumpfile to that directory and rename it for future reference. (It is suggested that you rename dumpfile with the date of the dump, for example, "dumpfile.010198".)
In addition to saving the dump you will also have to make a copy of the kernel and copy the contents of the "mod.d" directory.
To copy the UNIX kernel:
# cp /stand/unix /<directory_dump_is_in>
Now you can rename "unix" with a name that will coincide with the dumpfile name.
To copy the /etc/conf/mod.d directory, first create a subdirectory named something similar to:
mod.d.<date>
under the directory that the dumps are being saved to, then copy the mod.d directory to that subdirectory:
# cp /etc/conf/mod.d/* /<directory_dump_is_in>/mod.d.<date>
Once the dumpfile, kernel and mod.d directory have been saved, you are ready to run the crash utility against the dumpfile.
To run the crash utility use the following syntax:
# crash -d <dumpfile_name> -n <kernel_name> -m <mod.d
directory>
-w <output_text_name> <Enter>
You should now see a secondary prompt, ">".
At the ">" prompt, type in the following commands:
> panic
> trace
> stack
> user
> proc
> quit
You should now have a text file that can be viewed and will show information that may help lead to what caused the panic.
Next, find the "eip" value in the "PANIC REGISTERS" section. For example:
eip:c015633c
Now you can use "eip" address to try to find the failing function (although this may not always be successful):
# crash -d <dumpfile_name> -n <kernel_name> -m <mod.d directory> -w
At the secondary prompt ">" enter the following:
> ts <eip_address>
> quit
For example:
> ts c015633c
Make a note of the information returned, which would look similar to this:
0xc015633c T xcmn_panic+4c
Note
On UnixWare 7.1.0 and later versions, the crash(1M) program has an additional -a <analysis_file> flag which automatically performs crash dump analysis and writes the result into analysis_file.
|
|