支持 32 位 i586/非 PAE 的最新发行版,专门用于 ALIX 板 (AMD Geode)

cod*_*kel 6 linux operating-system embedded 32-bit

我有几个ALIX系统(由 AMD Geode LX 处理器提供支持,不支持 PAE),它们仍在 Ubuntu 12.04 上运行,这是最后一个支持非 PAE 内核的 Ubuntu 版本(即为 i586 架构编译)。我将它们用作低调的通用(内部)服务器(SSH、文件服务、cron 作业、小型 Web 应用程序),这就是我首先选择 Ubuntu 的原因。由于 12.04 已停产,我正在寻找替代方案,但尚未找到。即使是制造商网站上列出的操作系统似乎也大多已经过时或具有特殊用途。唯一的选择似乎是:

  • Alpine Linux这个!,查看更新)
  • Slackware,2016-06 的最后一个版本和活动补丁(尽管我不确定当前版本 14.2 的非 PAE 支持)
  • Voyage Linux,最后一次发布于 2017 年 1 月,该网站的某些部分似乎已失效
  • 保留 Ubuntu 12.04 并忽略 EOL 状态

对于面临同样问题的其他 ALIX 用户的 Linux 发行版,是否有任何现场报告/建议?

编辑:截至2018-03-04的现状

闲逛了一段时间后,我最近也在尝试 Slackware。我认为,如果您习惯了 Debian/Ubuntu 和 CentOS/RHEL 等流行的 Linux 发行版,那么您需要一段时间才能成为一名粉丝,但恕我直言,这是让我的 ALIX 系统保持活力的最佳方式。对我来说,Slackware 最突出的缺点(到目前为止我了解到的)是

  • 包管理器缺少依赖管理和
  • 使用五年后upstart必须再次处理初始化脚本。systemd

这将需要一些繁琐的工作来让一切正常运行,但我有什么资格抱怨呢;)

更新(2020年11月23日)

由于这现在是一个“著名问题”,我做了一些进一步的挖掘:Alpine Linux支持非 PAE 处理器,并且在我的 ALIX.1D 上运行得非常好。

Roy*_*ams 2

你说得对,Linux 系列中的非 PAE i586 选项正在减少。幸运的是,从我今天的测试来看,Slackware 14.2(32 位)在我的 ALIX 2d13 板上运行良好。它是可修补的并且具有良好的 ALIX 支持。

安装与任何半嵌入式平台相同。理论上,ALIX板支持PXE安装,但我只是使用QEMU(qemu-system-i386)和4G虚拟驱动器,从虚拟CD-ROM启动基本的32位Slackware安装光盘1,用于slackpkg修补操作系统,安装各种附加软件包。我做了一些额外的配置,然后将dd图像写入我的 4G 紧凑型闪存。4G是我选择的最小的;在较小的卡上安装完整的操作系统会很紧张。

对于非 PAE,在 Slackware 安装过程中,选择“expert/menu”软件包选项,并取消选择所有 SMP 内核。其余内核不需要或尝试使用 PAE。由于 ALIX 板只有 256M RAM,您可能希望选择非“巨大”通用内核并忽略“巨大”内核,然后根据需要启用内核模块/etc/rc.d/rc.modules.local。(请注意,我不需要对任何本机 ALIX 设备执行此操作。)

特别注意的是,Geode 硬件加密功能会自动检测和使用,这很好:

[    7.527411] AMD Geode RNG detected
[    7.679201] Geode LX AES 0000:00:01.2: GEODE AES engine enabled.
Run Code Online (Sandbox Code Playgroud)

您需要按照Slackware 的串行端口设置说明进行操作,这对我来说非常有用(无论如何,使用基于 lilo 的设置和 38400)。

这是我最初的 Slackware 设置的完整控制台级 dmesg(添加了一些 gpsd 和 NTPsec ntpd,这是今天项目的目标)。

除了 Linux 之外,BSD 也应该可以正常工作。由于 pfSense 基于 FreeBSD 并且多年来一直在 ALIX 板上运行良好,因此 FreeBSD 将是一个可靠的选择。我使用类似的 QEMU 方法在 ALIX 上安装了 FreeBSD i386 11.1。(但我最终选择了 Slackware,因为我可以获得 NTP 的内核 PPS,而无需重新编译内核 - 只需启用该pps_ldisc模块)。为了在 FreeBSD 上获得相同的结果,我必须编译一个自定义内核。为了在 ALIX 上发挥最佳性能,内核CPU_GEODE选项和I586_CPUcpu 类型也应该在内核配置中使用。)

但对于一般服务器用途,Slackware 或 BSD 都应该可以正常工作。