这是典型的情况,其中Windows 7安装创建了大小约为1.1GB的SYSTEM分区,并为硬盘驱动器中的剩余可用空间创建了另一个分区。
当前,我们有两个文件,它们是dd命令的原始备份:一个system.raw
(〜1.1GB)文件和一个win7.raw
(〜80GB)文件。
编辑问题的额外信息:但我们也有初始硬盘。但是,该硬盘的总大小为500GB,比目标驱动器SSD 90GB大得多。这就是为什么简单的整个驱动器传输无法正常工作的原因
我们如何使用dd命令将这些单独的分区还原到单个硬盘驱动器?注意:硬盘驱动器为空并且有足够的可用空间
编辑问题:我们还将需要有关如何正确对齐分区的帮助。请记住,原始驱动器是HDD,目标驱动器是SSD。从各式各样的教程和Wiki中无法理解目标是什么,对齐扇区或对齐字节以及如何以安全的方式准确地实现它。
最好对整个磁盘进行映像(或至少对要克隆的分区末尾的所有内容进行映像),因为那样一来您就无需重新创建分区,但是仍然可以。
基本上,您需要重新创建旧的分区表。首先,请确保已将磁盘正确初始化为MBR(有时称为DOS)模式或GPT模式,无论使用哪种原始磁盘。如果不确定,并且磁盘小于2TB,请首先使用MBR。
使用诸如Linux liveCD / live flashdrive之类的工具gparted
或qtparted
从Linux liveCD / live flashdrive中获取的工具来初始化磁盘(如果需要)并创建分区,并确保分区大小正确。尽可能使尺寸接近完美-您应该能够使其完全匹配-但过大比过小要好。太大的分区只会导致一些浪费的空间,并不是那么有害。
如果您使用的是MBR(主引导记录),则将系统分区标记为可引导(“引导标志”或“活动”)。如果使用的是GPT(GUID分区表),则将系统(1.1GB)分区为EFI系统分区。不必理会它们或其他任何格式,它们只需要存在于磁盘的分区表中(并具有正确的大小和元数据)即可。
创建分区后,您可以将备份中的数据复制到新驱动器上。不需要格式化的原因是,备份包含所有文件系统元数据-格式化工具将写入的内容相同-因此,您只需要一个分区即可将每个图像文件的内容放入其中。这些命令将是这样的:
dd if=/mount/backup/system.raw of=/dev/sda1 bs=4M
dd if=/mount/backup/win7.raw of=/dev/sda2 bs=4M
该/mount/backup/*.raw
部分是备份映像的路径,该映像可能位于某些外部或辅助存储上。这些/dev/sda*
部分是您刚创建的原始分区的路径。sda
表示系统中的第一个硬盘,其后的数字表示哪个分区。如果不确定,分区工具应指出所需的路径。最后一部分只是告诉dd
您使用4MB的块大小,以便复制更快。dd
默认情况下,块大小非常小,因此在现代硬件上复制速度非常慢。
在将映像扩展回磁盘后,可以使用gparted
的“修复文件系统”功能使文件系统的长度与分区的长度相匹配,尽管此步骤不是必需的(只是避免浪费空间)。尝试从硬盘启动。希望它可以工作。如果没有,并且您使用了GPT,则可能需要重新执行该过程,将磁盘初始化为MBR。另外/或者,您可能需要启动Win7安装或修复磁盘,并告诉它执行启动修复过程;否则,您可能需要启动它。这应该重新安装引导程序并修复分区元数据。
再次启动Win7后,可以使用它gparted
来修复长度(如果尚未安装)和/或使用Windows中的“磁盘管理”将OS分区扩展到磁盘上的任何额外空间。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句