从死机 PC 迁移 Windows 7

从死机 PC 迁移 Windows 7

我有一块来自坏掉的 PC 的硬盘,我想把它用在配置完全不同的新 PC 上,并移植操作系统。所有 MS 解决方案都围绕着先在旧 PC 上运行某些程序 - “sysprep”、“Easy Transfer”、“Upgrade”。修复操作系统没有任何作用。我该怎么做才能进行迁移?

这是我使用“禁用系统故障时自动重启”启动时得到的结果:https://drive.google.com/file/d/1CPFHFzkS​​ipX6ezgMI8L1DfCj3FcuDsyj/view?usp=sharing “启用启动日志”根本不会创建 Ntbtlog.txt。Windows\Minidump\ 中也没有创建任何内容。加载 classpnp.sys 后,“安全模式”进入 BSOD:https://drive.google.com/file/d/1v9-Oq5UYOy0H69wpSi_T6T5DEaqvCNWg/view?usp=sharing

答案1

在开始之前,我必须发出警告:
Windows 7 不支持 2016 年以后制造的新硬件,并将于 2020 年 1 月(距今仅一个多月)正式达到使用寿命终止状态。如果您要将 Win7 实例转移到新硬件,我强烈建议将其还原到 VM 而不是在裸机上运行。

现在,继续前进...

这是一个漫长而复杂的过程,因此第三方软件可能更有用。但 Microsoft 完全支持的捕获操作系统实例的方法是使用 DISM。它不是必须sysprep首先使用的(强烈建议您这样做,但在您的案例中不是一个选项)。您所要做的就是将死机 PC 的硬盘驱动器连接到正常运行的 Windows PC(连接到其 SATA 端口之一或通过 USB 底座),然后发出以下命令:

dism /capture-image /imagefile:"whatever.wim" /capturedir:E:\ /name:"Old HDD" /compress:max /verify /EA`

/Imagefile 是您要创建的 WIM 文件的完整路径和名称,用引号括起来(例如"C:\Users\Me\Desktop\Old Drive.wim")。/Capturedir 是您要捕获的旧硬盘驱动器的字母和根路径(例如E:\F:\)。/Name 可以是您想要的任何友好名称,用引号括起来。

注意冒号。冒号和参数之间不应该有空格(/capturedir:E:\正确的语法也是如此)。

一旦您获得图像文件,您可以将其复制到 USB 记忆棒或其他任何东西,然后将其传输到新 PC(或 VM)。


从任何 Windows ISO 或 USB 启动目标 PC/VM,然后在 Windows 设置屏幕上按Shift+F10以调出命令提示符。然后,您可以使用另一个 DISM 命令将映像恢复:

dism /apply-image /imagefile:"D:\whatever.wim" /applydir:C:\ /name:"Old HDD" /verify /EA

适用与捕获相同的规则。/Imagefile 是您之前生成的 .WIM 文件的完整路径和名称(如果名称中有空格,请务必将其括在引号中!)/ApplyDir 是您要将其转储到的分区的字母和根路径。/Name 是您为其指定的友好名称,用引号括起来。

笔记:
确保您的 /applydir 是已格式化的空卷。您绝对不想对已有数据的卷执行此操作。如果目标驱动器为空白,则需要使用diskpart来正确创建所需的分区。如何执行此操作取决于您的驱动器是 GPT 还是 MBR,以及您的目标是 UEFI 还是传统 BIOS 模式。所有这些都是超出此问题范围的另一个主题。如果您需要帮助,您可能需要将其作为另一个问题发布。


现在您已将映像应用到目标卷,您需要使其可启动。您可以使用以下bcdboot命令完成此操作:

bcdboot C:\Windows /s s: /l en-US /f ALL

C:\Windows必须是您应用映像的卷上的 \Windows 目录,无论当前驱动器号是什么。如果不是 C: 也没关系,Windows 启动时它将是 C:。

/S需要是 Windows 实际的卷靴子来自,通常是隐藏卷,不是C: 驱动器!您必须使用diskpart为该卷分配一个驱动器号,以便执行此命令,因为它通常根本没有驱动器号。


此时您应该能够移除 ISO/USB 棒并重新启动。当 Windows 启动时,它将运行一系列硬件检测,有些东西可能无法正常工作。在它完成所有这些操作时请耐心等待。如果您在 VM 中执行此操作,请确保您手边有驱动程序,请安装 VM 附加程序。它将为您处理所有驱动程序。

相关内容