0 如果是 Linux 系,简单说就是把 bootloader 安装好,把 fstab 修改好,然后把根目录(home 酌情考虑)拷贝过去,就可以了。如果要在别的机器使用,别忘了重建 initramfs 。Linux 用户请自行折腾 🙂

Mac 没有使用过,请大神补充。

下面默认题主指的是 Windows 系操作系统。下面的描述中使用 7 代替使用 NT 6 的内核的操作系统,使用 XP 代替 NT 5 的内核的操作系统。

1 磁盘需要是在当前操作系统下格式化的。从 Windows Vista 开始,引导器从 ntldr 变成了 bootmgr ,如果在 XP 下格式化的磁盘在 7 下面使用, PBR 就找不到 bootmgr 了。

2 如果是 XP ,直接拷贝系统卷的全部文件即可。如果是 7 :

2.1 如果是 MBR/BIOS 方式引导,需要将 “系统保留”卷分配卷标,并拷贝里面的引导文件。并将系统分区的文件拷贝过去。需要修改拷贝过去的引导记录文件,否则无法将控制权从 bootmgr 移交到 winload 。请参考 bcdedit 修改。

2.2 如果是 GPT/UEFI 方式引导,就没有办法实现了。因为 Windows 如果使用 UEFI 引导,只能使用 GPT 分区,而格式化的磁盘是 MBR 分区的。除非从其他地方找到 BIOS 引导的文件,本机拷贝过去是无法引导的。

3 如果需要在其他机器上使用,需要卸载大多数驱动程序,否则很容易 BSOD 。

— 完 —

本文作者:王明哲

【知乎日报】
你都看到这啦,快来点我嘛 Σ(▼□▼メ)

此问题还有 9 个回答,查看全部。
延伸阅读:
不在系统中”弹出”U盘就拔出U盘,是否会损坏U盘?
Linux 下文件复制移动到移动存储(U盘,移动硬盘 etc)的速度要比 windows 下快吗?

分享到