温馨提示×

Debian怎样解压固件

小樊
46
2026-07-23 15:39:38
栏目: 智能运维

在 Debian 系统中解压固件(firmware)文件的方法取决于固件的具体格式。下面按常见情况给你说明,基本都能覆盖 99% 的场景。


一、常见固件格式与解压方式

1️⃣ .tar.gz / .tar.bz2 / .tar.xz

这是 Linux 下最常见的固件包格式。

# .tar.gz
tar -zxvf firmware.tar.gz

# .tar.bz2
tar -jxvf firmware.tar.bz2

# .tar.xz
tar -Jxvf firmware.tar.xz

2️⃣ .zip

unzip firmware.zip

如果没安装 unzip

sudo apt update
sudo apt install unzip

3️⃣ .deb(Debian 固件包)

例如 firmware-linux-nonfree.deb

方法一:直接安装(推荐)

sudo apt install ./firmware.deb

方法二:只解压不安装

dpkg -x firmware.deb 解压目录

查看内容:

dpkg -c firmware.deb

4️⃣ .bin / .img(嵌入式固件)

这类文件通常是二进制镜像,不是压缩包,无法直接“解压”,但可以提取内容。

方法一:使用 binwalk

sudo apt install binwalk
binwalk firmware.bin

提取内容:

binwalk -e firmware.bin

方法二:挂载(如果是文件系统镜像)

sudo mount -o loop firmware.img /mnt

5️⃣ .cab(Windows 驱动 / 固件)

sudo apt install cabextract
cabextract firmware.cab

6️⃣ Android / 设备固件(.dat, .payload.bin

# payload.bin
sudo apt install payload-dumper-go
payload-dumper-go -o output_dir firmware.bin

二、解压后一般放哪里?

如果是 Linux 内核固件

sudo cp -r lib/firmware/* /lib/firmware/
sudo update-initramfs -u

⚠️ 注意:不要乱覆盖系统已有固件。


三、快速判断固件类型

file firmware.file

示例输出:

firmware.bin: u-boot legacy uImage
firmware.tar.gz: gzip compressed data

四、如果你不确定

你可以直接告诉我:

  • 固件文件名
  • 网卡 / 显卡 / 路由器 / 手机 / 主板 BIOS 哪种设备
  • file 文件名 的输出

我可以一步一步帮你解压并说明怎么用 ✅

0