从文件系统中findLinux内核版本的路由器固件

我已经下载了DAP2690-firmware-v101-rc019.bin ( 链接 )文件,这是一些D-Link路由器的固件更新。

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

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

我怎样才能做到这一点?

我会去检查在文件系统上编译的模块。 每个模块都有一个vermagic号码,它必须等于内核insmagic为了insmod加载模块。

这里有一个链接,描述如何提取它。 它还显示了如何使用strings来查找内核版本。

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