2011-12-15 17 views
2

ベンダーがソースを提供していないカーネルがあります。私はカーネルを持っていますが、それはgzipされたカーネルです。シーケンスのデータ部分はどこから始まるのですか?私は魔法の数(1f 8b)を見つけようとし、それをgzipファイルにコピーしようとしましたが、7zipでそれを解読することはできません。圧縮されたカーネルを解凍する方法

答えて

5

gzip圧縮バイナリの正しい方法があります。減圧は、バローズホイール(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 
関連する問題