我有一个供应商没有提供源代码的内核。我有一个内核,但它是gziped内核。序列的数据部分从哪里开始?我试图找到幻数(1f 8b)并将其复制到gzip文件中,但我无法在7zip中解码它。
答案 0 :(得分:5)
你有一个gzip压缩二进制文件的正确方法。对于burrows-wheeler(bzip2)或LZMA,减压是不同的。如果它没有使用7zip解压缩,请尝试使用gzip
/ zcat
之类的内容。
从http://www.uvm.edu/~bcodding/ticker/archives/31 -
解压缩gzip编码内核的示例$ mkdir -p /tmp/kernel-uncompressed/; cd /tmp/kernel-uncompressed/
$ cp /boot/vmlinuz-`uname -r` .
$ od -t x1 -A d vmlinuz-2.6.18-128.el5.uvm6PAE | grep "1f 8b 08"
0008320 1b 00 1f 8b 08 00 d5 c2 9a 49 02 03 ec 3b 7d 7c
$ dd bs=1 skip=8322 if=vmlinuz-2.6.18-128.el5.uvm6PAE | zcat > vmlinux