从文件系统中找到路由器固件的linux内核版本

时间:2013-04-21 08:09:43

标签: linux linux-kernel embedded-linux router firmware

我已下载文件DAP2690-firmware-v101-rc019.binlink),这是某些D-Link路由器的固件更新。

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

我只想从提取的文件(最好只从文件夹squashfs-root)知道此固件的linux内核版本。

我该怎么做?

2 个答案:

答案 0 :(得分:2)

我会去查看在文件系统上编译的模块。 每个模块都有一个vermagic个数字,必须等于内核vermagic才能insmod加载模块。

这是一个link,详细描述了如何提取它。 它还显示了如何使用strings来查找内核版本。

答案 1 :(得分: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 (william@J10) (gcc version 4.1.1 (Cavium@J10) (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