从 SteamCMD 到 Docker:一次 Ubuntu 服务器的 i386 架构彻底清理实录
摘要 在长期运行的 Ubuntu 服务器上,历史遗留的 32 位(i386)架构往往来自早期软件需求,例如 SteamCMD。这类依赖在功能退役后若不清理,会增加系统复杂度、降低可预测性。本文记录了一次完整、可控的 i386 架构移除过程,并最终将异构需求交由 Docker 处理,使宿主系统回归纯 amd64 状态。 一、问题背景 在一台 Ubuntu 22.04 服务器上,通过以下命令确认系统启用了 i386 架构: 输出显示: 进一步检查已安装的 32 位软件包: 结果发现系统中存在大量 libc6:i386、libssl3:i386、zlib1g:i386 等基础库,但唯一的应用级包来源是 SteamCMD(32 位)。 随着使用策略调整,决定不再在宿主机直接运行 SteamCMD,而改用 Docker 容器 承担此类需求,于是启动了 i386 架构的彻底清理。 二、初步尝试与关键误区 在移除 SteamCMD 后,直接尝试移除架构: 结果失败: 原因很明确:只要系统中仍存在任何 :i386 包,dpkg 就不会允许移除该架构。 三、apt 通配符陷阱 尝试使用 apt 通配符清理: …