20
20
I have already tried uncompress, gzip, and all other solutions that come up as google results and these have not worked for me.
To get just the image search for the GZ signature -
1f 8b 08 00
.> od -A d -t x1 vmlinuz | grep '1f 8b 08 00' 0024576 24 26 27 00 ae 21 16 00 1f 8b 08 00 7f 2f 6b 45
so the image begins at
24576+8 => 24584
. Then just copy the image from the point and decompress it -> dd if=vmlinuz bs=1 skip=24584 | zcat > vmlinux 1450414+0 records in 1450414+0 records out 1450414 bytes (1.5 MB) copied, 6.78127 s, 214 kB/s
Got these instructions verbatim from a forum online: http://www.codeguru.com/forum/showthread.php?t=415186
This process does not work for me and end up giving errors that states file not found 0024576 and all subsequent numbers.
How do I proceed extracting vmlinux from vmlinuz?
Thank you.
EDITED: This is a reverse engineering question. I have no access to the distro to install any RPM or recompile. I start with nothing but vmlinuz.
2Why do you want to do this? – Flimzy – 2011-06-18T04:12:02.147
This is actually for a friend who had to do something with it. The question seemed interesting and I pursued it for my academic interest. An alternative to this is to build the kernel :-/ – None – 2011-06-18T04:22:28.673
Well, for academic interest, I don't know if it's easily possible. I believe a vmlinuz kernel has an executable preamble--it's essentially a self-extracting archive. That's why using straight gunzip didn't work for you. The quoted method attempts to skip past that preamble. Why it doesn't work, I don't know for sure. Maybe somebody else with similar academic interests can give you a useful answer. :) – Flimzy – 2011-06-18T04:25:38.347