2013-04-21 48 views
4

我已经下载了文件DAP2690-firmware-v101-rc019.binlink),它是某些D-Link路由器的固件更新。从文件系统中找到Linux内核版本的路由器固件

我已经使用binwalk -e DAP2690-firmware-v101-rc019.bin(Binwalk v1.2b)解压缩了它,现在我在文件夹squashfs-root中拥有根文件系统。

我只想从解压缩的文件(最好只从文件夹squashfs-root)知道该固件的Linux内核版本。

我该怎么做?

+1

这可能很有用:http://plastilinux.blogspot.com/2009/11/how-to-know-version-of-kernel-without.html – Blender 2013-04-21 08:17:08

+0

感谢您的快速回复。 'squashfs-root'中不存在'vmlinuz'文件。 – assafmo 2013-04-21 08:26:46

回答

1

除了squashfs-root文件夹之外,还有一个A0文件。

binwalk A0透露:

DECIMAL HEX   DESCRIPTION 
    ------------------------------------------------------------------------------------------------------------------- 
    0   0x0   ELF 64-bit MSB MIPS32 rel2 executable, MIPS, version 1 (SYSV) 
    2969600  0x2D5000 Linux kernel version "2.6.16.26-Cavium-Octeon ([email protected]) (gcc version 4.1.1 ([email protected]) (gcc version 4.1.1 (Cavium Networks Development Build)) " 
    2991185  0x2DA451 LZMA compressed data, properties: 0x40, dictionary size: 2097152 bytes, uncompressed size: 2097216 bytes 
    3329399  0x32CD77 LZMA compressed data, properties: 0x40, dictionary size: 16777216 bytes, uncompressed size: 1073741824 bytes 
    3429479  0x345467 LZMA compressed data, properties: 0x40, dictionary size: 33554432 bytes, uncompressed size: 131072 bytes 
    3429503  0x34547F LZMA compressed data, properties: 0x40, dictionary size: 33554432 bytes, uncompressed size: 131072 bytes 
    3429527  0x345497 LZMA compressed data, properties: 0x40, dictionary size: 33554432 bytes, uncompressed size: 131072 bytes 
    3504750  0x357A6E LZMA compressed data, properties: 0x5B, dictionary size: 16777216 bytes, uncompressed size: 88 bytes 
    3915776  0x3BC000 gzip compressed data, from Unix, last modified: Thu Mar 11 16:11:03 2010, max compression 
2

我会去检查被编译在文件系统中的模块。 每个模块都有一个vermagic号码,该号码必须与内核vermagic相同,以便insmod加载该模块。

这里有一个link描述如何提取它。 它还显示如何使用strings以查找内核版本。

相关问题