OpenWRT x86各个版本的区别

本文主要记录在上班学(mo)习(yu)时的一些学习记录,本文主要记录的是OpenWRT X86各个架构的区别。

关键词: OpenWRT x86各个版本的区别

简单介绍 openwrt x86 平台各个版本的区别

x86 OpenWrt 有多个目标,其中一些针对旧的或特定的硬件,它们的构建默认值可能不适合现代 x86 硬件:

  • 64适用于现代 PC 硬件(从 2007 年左右开始的任何硬件),它是为 64 位功能的计算机构建的,并且支持现代 CPU 功能。除非您有充分的理由不这样做,否则请选择此选项。
  • Generic适用于仅 32 位的硬件(旧硬件或某些 Atom 处理器),应该是i686 Linux 架构,可在 Pentium 4 及更高版本上工作。仅当您的硬件无法运行 64 位版本时才使用此选项。
  • Legacy是针对非常老的PC硬件,Pentium MMX,在Linux架构中被称为i586的支持。它将错过您在现代硬件上想要/需要的许多功能,例如多核支持和对 4GB 以上 RAM 的支持,但实际上可以在古老的硬件上运行,而其他版本则不能。
  • Geode是为 Geode SoC 定制的传统目标,它仍在许多(老化的)网络设备中使用,例如 PCEngines 的旧 Alix 板。

1. ext4-combined-efi.img.gz

  • 使用可读写的ext4分区,没有squashfs的只读文件系统
  • 根分区可以使用更大的驱动器(e.g. SSD/SATA/mSATA/SATA DOM/NVMe/etc)进行扩展
  • 没有故障安全模式和出厂重置等功能,这些功能需要squashfs的支持
  • 自带引导分区和根分区以及主引导记录 (MBR) 区域以及更新的 GRUB2
  • 支持efi引导

2. ext4-combined.img.gz

  • 同1,但不支持efi引导

3. ext4-rootfs.img.gz

  • 只有根分区的镜像,重新安装不会覆盖引导分区和主引导记录 (MBR),
  • 由于不带引导分区,首次安装需要自行使用grub或者syslinux来引导
  • 使用ext4分区

4. kernel.bin

  • 独立的内核

5. squashfs-combined-efi.img.gz

  • squashfs是个只读的文件系统, 相当于windowsghost, 支持故障安全模式和出厂重置等功能
  • 包含一个只读的根文件系统和一个存储设置以及安装软件可读写的分区
  • 组合模式,只有不到100MB的空间来存储额外的包和配置,并且无法扩展根分区
  • 支持efi引导

6. squashfs-combined.img.gz

  • 同5,但不支持efi引导

7. squashfs-rootfs.img.gz

  • <不知道是干啥的>

8. rootfs.tar.gz

  • 所有的文件都在根目录下
  • 不带引导,需要自行使用grub或者syslinux来引导

建议:

  • 需要扩展分区使用: combined-ext4.img.gzext4-combined-efi.img.gz
  • 不需要扩展分区使用: squashfs-combined.img.gzsquashfs-combined-efi.img.gz

参考:

  1. https://openwrt.org/docs/guide-user/installation/openwrt_x86