----- Original Message ----- > Hi , > > I have tried to use crash 4.1.0 in ubuntu 10.04 kernel (2.6.32.25), > when I don't specify the memory dump file ,it works perfectly as it > reads the memory from crash driver (crash model), it shows below: > > root@o:/# crash /boot/System.map-2.6.32-25-generic /home/amer/ubuntu-lucid/debian/build/build-generic/vmlinux > > crash 4.1.0 > Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Red Hat, Inc. > Copyright (C) 2004, 2005, 2006 IBM Corporation > Copyright (C) 1999-2006 Hewlett-Packard Co > Copyright (C) 2005, 2006 Fujitsu Limited > Copyright (C) 2006, 2007 VA Linux Systems Japan K.K. > Copyright (C) 2005 NEC Corporation > Copyright (C) 1999, 2002, 2007 Silicon Graphics, Inc. > Copyright (C) 1999, 2000, 2001, 2002 Mission Critical Linux, Inc. > This program is free software, covered by the GNU General Public License, > and you are welcome to change it and/or distribute copies of it under > certain conditions. Enter "help copying" to see the conditions. > This program has absolutely no warranty. Enter "help warranty" for > details. > > GNU gdb 6.1 > Copyright 2004 Free Software Foundation, Inc. > GDB is free software, covered by the GNU General Public License, and you are > welcome to change it and/or distribute copies of it under certain conditions. > Type "show copying" to see the conditions. > There is absolutely no warranty for GDB. Type "show warranty" for details. > This GDB was configured as "i686-pc-linux-gnu"... > > SYSTEM MAP: /boot/System.map-2.6.32-25-generic > DEBUG KERNEL: /home/amer/ubuntu-lucid/debian/build/build-generic/vmlinux (2.6.32-25-generic) > DUMPFILE: /dev/crash > CPUS: 1 > DATE: Wed Feb 23 11:40:40 2011 > UPTIME: 09:17:34 > LOAD AVERAGE: 0.89, 0.74, 0.78 > TASKS: 258 > NODENAME: o > RELEASE: 2.6.32-25-generic > VERSION: #45-Ubuntu SMP Sat Oct 16 19:48:22 UTC 2010 > MACHINE: i686 (1339 Mhz) > MEMORY: 511.5 MB > PID: 2703 > COMMAND: "crash" > TASK: cf27bfc0 [THREAD_INFO: dfbc0000] > CPU: 0 > STATE: TASK_RUNNING (ACTIVE) OK. Note that you don't have to use the /boot/System.map-2.6.32-25-generic file on the command line, presuming that the live kernel is actually running that same /home/amer/ubuntu-lucid/debian/build/build-generic/vmlinux kernel. > > but when I entered the dump file argument I got error (the memory > image is obtained from /dev/crash by dd tool), it shows below: > > root@o:/# crash /boot/System.map- 2.6.32 -25-generic /home/amer/ubuntu-lucid/debian/build/build-generic/vmlinux home/amer/image.dd > crash 4.1.0 > Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Red Hat, Inc. > Copyright (C) 2004, 2005, 2006 IBM Corporation > Copyright (C) 1999-2006 Hewlett-Packard Co > Copyright (C) 2005, 2006 Fujitsu Limited > Copyright (C) 2006, 2007 VA Linux Systems Japan K.K. > Copyright (C) 2005 NEC Corporation > Copyright (C) 1999, 2002, 2007 Silicon Graphics, Inc. > Copyright (C) 1999, 2000, 2001, 2002 Mission Critical Linux, Inc. > This program is free software, covered by the GNU General Public License , > and you are welcome to change it and/or distribute copies of it under > certain conditions. Enter "help copying" to see the conditions. > This program has absolutely no warranty. Enter "help warranty" for > details. > > crash: home/amer/image.dd: not a supported file format > > Usage: > crash [-h [opt]][-v][-s][-i file][-d num] [-S] [mapfile] [namelist] > [dumpfile] > > Enter "crash -h" for details. > > > could you please give some advice to resolve this problem. Yes -- don't do that. Running "dd /dev/crash > image.dd" just dumps a bunch of bytes into the image.dd file. Dumpfiles by definition need some kind of bookkeeping header in order for the crash utility to know where the contents of a particular page are located in the dumpfile. Crash supports over a dozen different dumpfile formats. If you want to take a snapshot of your live system without crashing it, you can try the "snap" extension module: # cd <path-to>/crash-5.1.2 # make extensions ... # That will build the "snap.so" extension module (along with a few others found in the crash-5.1.2/extensions subdirectory). The run live -- note that normally you don't have to enter anything on the command line if the debuginfo vmlinux file of the running kernel is in a "known" location. I don't know how Ubuntu sets things up, so it's possible that you at least need to enter the path to your vmlinux file (and the System.map if that vmlinux file is different from the running kernel). Anyway, get a live session going, load the "snap.so" extension module, and dump kernel memory into an ELF-style dumpfile. For example: # crash crash 5.1.2 Copyright (C) 2002-2011 Red Hat, Inc. Copyright (C) 2004, 2005, 2006 IBM Corporation Copyright (C) 1999-2006 Hewlett-Packard Co Copyright (C) 2005, 2006 Fujitsu Limited Copyright (C) 2006, 2007 VA Linux Systems Japan K.K. Copyright (C) 2005 NEC Corporation Copyright (C) 1999, 2002, 2007 Silicon Graphics, Inc. Copyright (C) 1999, 2000, 2001, 2002 Mission Critical Linux, Inc. This program is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Enter "help copying" to see the conditions. This program has absolutely no warranty. Enter "help warranty" for details. GNU gdb (GDB) 7.0 Copyright (C) 2009 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-unknown-linux-gnu"... KERNEL: /usr/lib/debug/lib/modules/2.6.18-128.el5/vmlinux DUMPFILE: /dev/crash CPUS: 8 DATE: Thu Feb 24 09:21:24 2011 UPTIME: 37 days, 00:57:58 LOAD AVERAGE: 0.29, 0.38, 0.18 TASKS: 262 NODENAME: crash.usersys.redhat.com RELEASE: 2.6.18-128.el5 VERSION: #1 SMP Wed Dec 17 11:41:38 EST 2008 MACHINE: x86_64 (1995 Mhz) MEMORY: 1 GB PID: 27743 COMMAND: "crash" TASK: ffff81002750a820 [THREAD_INFO: ffff81003db8c000] CPU: 2 STATE: TASK_RUNNING (ACTIVE) crash> extend snap.so ./extensions/snap.so: shared object loaded crash> snap live.dump live.dump: [100%] -rw-r--r-- 1 root root 1071686392 Feb 24 09:18 live.dump crash> q # Then use the "live.dump" dumpfile: # crash /usr/lib/debug/lib/modules/2.6.18-128.el5/vmlinux live.dump crash 5.1.2 Copyright (C) 2002-2011 Red Hat, Inc. Copyright (C) 2004, 2005, 2006 IBM Corporation Copyright (C) 1999-2006 Hewlett-Packard Co Copyright (C) 2005, 2006 Fujitsu Limited Copyright (C) 2006, 2007 VA Linux Systems Japan K.K. Copyright (C) 2005 NEC Corporation Copyright (C) 1999, 2002, 2007 Silicon Graphics, Inc. Copyright (C) 1999, 2000, 2001, 2002 Mission Critical Linux, Inc. This program is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Enter "help copying" to see the conditions. This program has absolutely no warranty. Enter "help warranty" for details. GNU gdb (GDB) 7.0 Copyright (C) 2009 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-unknown-linux-gnu"... KERNEL: /usr/lib/debug/lib/modules/2.6.18-128.el5/vmlinux DUMPFILE: live.dump CPUS: 8 DATE: Thu Feb 24 09:18:13 2011 UPTIME: 37 days, 00:54:47 LOAD AVERAGE: 0.31, 0.11, 0.06 TASKS: 257 NODENAME: crash.usersys.redhat.com RELEASE: 2.6.18-128.el5 VERSION: #1 SMP Wed Dec 17 11:41:38 EST 2008 MACHINE: x86_64 (1995 Mhz) MEMORY: 1 GB PANIC: "" PID: 27603 COMMAND: "crash" TASK: ffff81001a57f100 [THREAD_INFO: ffff81001ad22000] CPU: 2 STATE: TASK_RUNNING (PANIC) crash> You may see some command errors because the system is not frozen when the dump is taken, so vital things may be changing while the memory is being copied. For example, "bt" on the active tasks may show nonsensical data, given that they were running when the memory was being copied. Hope this helps, Dave -- Crash-utility mailing list Crash-utility@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/crash-utility