设置
假设我们在一台现代的“标准” PC 上安装当前的 Debian 版本(即截至 2025 年 3 月的 Bookworm),即一些现代的 x86_64 架构 CPU,在安装过程中不需要特殊内核模块或用户的任何特殊输入(除了常规的高级配置,如键盘布局等)。这是在 SSD 上安装的最基本、最简单的方法,它是唯一安装的操作系统,在只有这个 SSD 作为硬盘的机器上。
现在我们将这个 SSD 移到另一台 PC 上,基本操作相同,但 CPU 可能不同(例如,一个可能是 AMD,另一个是 Intel,但都是 x86_64),主板也可能不同(同样,为了便于讨论,假设我们在 Intel 和 AMD 之间切换)。RAM 可能更多或更少,显卡也可能不同(或板载显卡)。网络芯片、音频芯片、USB 控制器以及主板附带的其他任何芯片也可能不同。但 Debian 使用标准内核模块完美支持所有这些。如果从头开始安装 Debian,两台机器都可以完美运行,并且具有相当的功能。
除了基本安装(使用一些 X 桌面,比如 Gnome 或 KDE,采用基本默认设置)。
问题
对于此安装,我们是否期望只需将 SSD 移至 PC 1 即可从第一次启动开始完美运行?或者,在 Debian 安装过程中,某些东西是否仅根据特定硬件的需要进行安装或配置,因此很有可能某些东西在第二台 PC 上无法立即运行?
附录
...如果答案是“是的,很可能会出错”,那么在 PC 1 上进行初始安装后,是否可以采取一些措施,以使此举更有可能在新 PC 上运行(不知道具体是哪台 PC)?
对此的一般回答是“没问题”。我曾将 Debian 安装在 USB 硬盘上,然后简单地从一台机器转移到另一台机器。这种设置没有什么特别之处,内核通过 USB 控制器访问硬盘,但这一切都是在启动时确定的。
最有可能出错的是其他硬件需要一些专有驱动程序(例如特殊的 WiFi 驱动程序)。您在问题中明确排除了这种可能性,但其他读者应该意识到这是一种风险。
然而,由于软件社区越来越关注安全性,我对在 2025 年给出这个答案感到有点紧张。许多操作系统已转向将所有数据加密(全盘加密)作为标准,Linux 发行版不可避免地面临同样的压力。
这很重要,因为常用的方法是使用硬件自己的TPM来保护根密钥。这样就避免了用户需要想出加密密码并在每次启动时输入它,或者插入一些硬件令牌来解锁它。
它的设计目的正是阻止您所描述的情况:即大多数其他操作系统 [Windows、MacOS、Android] 现在故意让硬盘无法插入另一台机器并读取数据。如果您更换引导加载程序、操作系统或主板,那么硬盘就会被加密。
据我所知,Linux 在这方面落后了。工作正在进行中,但 Linux 的启动顺序设计使其更难实现,并且通常需要用户进行一些精心的设置。
看到这项技术在 Linux 中逐渐成熟后,我想我们可能即将看到发行版开始默认提供锁定在硬件上的全盘加密。