什么可能阻止我从笔记本电脑上卸下当前的硬盘并购买新的笔记本电脑,安装磁盘并从我离开的地方恢复?换句话说,是什么阻止我当前安装的 Debian 9 被视为可移植的?
- 如果 Grub 条目使用实体引用(UUID 是正确的解决方案,而不是
/dev/sdaX
或(hd0,1)
) - 如果新笔记本电脑的 CPU 架构支持我的安装(在本例中为 x64)
新笔记本电脑应该启动(在我的情况下正在启动)。
在最坏的情况下驱动程序可能会丢失,但我的目的是创建一个名为的脚本switch-to-new-hardware.sh
来安装:
- 显卡驱动(如果可以的话,如果需要的话)
- NIC(eth、wifi)卡驱动程序(如果需要)
- 声卡驱动程序
- ...
切换到新硬件时应考虑哪些因素?
答案1
很多微小的细节,如果你的 grub 工作正常的话(这很容易解决,但会产生巨大的直接无法启动影响)。
如果您使用引导过程的默认设置,那么通常情况下您没问题,因为 udev 将为所有类型的设备加载适当的驱动程序,除了那些超级不常见的设备(磁盘上没有安装内核驱动程序)。
Xorg 需要 xf86-video-xxx 提供的某种用户模式 DDX 驱动程序,新显卡未安装该驱动程序。
真正难以解决的问题是上层应用程序的配置,就像您有一个带有硬编码设备名称的脚本。相机应用程序使用硬编码的相机设备名称。网络服务使用已不存在的硬编码设备名称或您不再使用无线网络等。您的IP发生变化,因此某些互联网服务可能会拒绝接受您的cookie并要求您重新登录。
不管怎样,我认为如果你使用默认的发行版设置并在你的新计算机上成功启动,并且 Xorg 工作正常,你可以一一解决不再工作的问题,在找到它们之前不需要解决它们。
PC 由许多公司制造的许多不同部件组成,没有一个简洁的解决方案来编写脚本来切换到新 PC。您需要尽可能使用可移植的配置来使您的操作系统可移植。 PC 操作系统就是这样设计的。
答案2
除了您已经提到的之外,我想到的是:专门为您的旧笔记本电脑生成的“initramfs”,它不包含启动任何其他系统所需的所有内容,这可能会阻止您将磁盘连接到新系统。
但这是一种罕见的情况,如果您使用默认选项安装了 Debian,那么您的“initramfs”是通用的并且包含所有必要的元素。
或针对特定硬件的定制内核,缺乏驱动程序和模块来正确运行所有可能的硬件。