如何复制整个硬盘?


12

我有一台具有500 GB(使用了将近15 GB)硬盘的Ubuntu 12.04生产服务器。我想将包括其分区结构在内的整个HDD复制到另一个具有400 GB大小的HDD,以便更改HDD不会影响操作系统。

哪种工具是完成此任务的最佳解决方案?


您是否可以物理访问服务器?如果可以,可以在RAID中安装驱动器吗?那可能是最简单,最安全的解决方案。
don.joey 2013年

Answers:


6

有许多工具可以执行此操作,每种工具都有其自身的优点和缺点。Clonezilla是经常用于此任务的实用程序。但是,我不确定目标磁盘比源磁盘小这一事实将如何处理。

另一种方法是手动分区目标(使用的GParted, ,partedfdiskgdisk或其他工具),创建在目标文件系统,安装目标分区,并复制所做的一切与cptar。这将需要对目标进行一些其他更改,例如(可能)调整目标/etc/fstab并安装引导加载程序。总体而言,此方法比许多方法需要更多的精力,但是如果您知道自己在做什么,它就会非常灵活,并且只要文件实际适合目标空间,它肯定可以从较大的磁盘复制到较小的磁盘。


1
不会复制整个文件系统的内容,而cp对于诸如/dev和这样的目录会造成问题/proc
Bert Van Vreckem 2013年

1
/dev/proc目录都是动态的-他们创建为内核中的特殊驱动程序的虚拟文件系统。因此,您通常会在复制操作中忽略这些目录。
罗德·史密斯

1
是的,您必须忽略这些。使用“ cp --one-file-system”。
雅各布2013年

默认情况下,clonezilla伪克隆HDD:(1)备份结构元数据,包括MBR;(2)使用的数据扇区,这意味着它将忽略其了解的具有文件系统的分区的可用空间;(3)压缩备份的分区。所有这些意味着只要原始磁盘上至少有100GB的可用空间,它就可以将500GB的硬盘“克隆”到400GB的硬盘。换句话说,clonezilla可以应付目标磁盘小于源磁盘的事实。
landroni 2014年

@RodSmith,关于“将所有内容复制到cp ” ...那么元数据(最后访问的时间等)呢?
Pacerier,2015年

3
  1. 备份您的生产硬盘。
  2. 使用gparted将生产硬盘缩小到比目标磁盘的容量小一点的情况(在这种情况下,小于400GB)。
  3. 复制整个硬盘。为此,请从实时CD引导,并dd if=/dev/sda of=/dev/sdc bs=1M在其中sda是生产硬盘的地方使用sdc,在新硬盘的sdc上使用。或诸如clonezilla(复制整个磁盘)之类的东西。

1
任何调整文件系统大小的操作都具有灾难性文件系统故障的风险。这种风险很小,但是在有其他选择时(例如使用Clonezilla,如果它可以处理较小的目标,或者使用tarcp),冒险是不明智的。
Rod Smith

1
我们在生产环境中定期使用gparted。来自Clonezilla的引用:“目标分区必须等于或大于源分区。” 如果您有关于分区,Bootsectors的,fstab文件等所需的知识手册复印件就可以了
Clausi

1
我支持我的声明:调整分区大小会带来灾难性故障的风险。注意:灾难性的。停电或系统崩溃(在重新调整大小时出现错误,错误或其他问题)可能导致调整大小导致数据结构混乱,如果可以修复的话,这些数据结构将耗时且修复成本高昂。有更好的选择,即使Clonezilla不是其中之一。如果您定期执行此操作并且没有被咬过,那么这意味着您很幸运,仅此而已。
罗德·史密斯Rod

1
比重复您的观点并提到运气要好得多,这将是您理论的重要证明。以我的经验,只有在没有备份的情况下才会发生“灾难性故障”,这是我的清单中的第一位。;)
条款

1

我建议使用Clonezilla,它易于使用,可以执行整个磁盘备份,并且也不会占用太多空间进行备份。

为此,首先您必须从此处下载clonezilla ISO。

下载后,您需要将其刻录到CD。

然后,您必须从中启动以进行完整的系统备份。

此处提供了完整的过程-http : //clonezilla.org/clonezilla-live-doc.php

您将必须选择“保存磁盘映像”选项,其步骤在此处提供-http : //clonezilla.org/show-live-doc-content.php?topic=clonezilla-live / doc / 01_Save_disk_image

备份后,可以使用“还原磁盘映像”选项还原该文件,备份过程在此处提供:http: //clonezilla.org/show-live-doc-content.php?topic=clonezilla -live / doc / 02_Restore_disk_image

了解更多。如果您有任何疑问,请告诉我们。

谢谢!


1

正如其他人建议的那样,如果将工作分区的大小调整为较小的大小,则Clonezilla可以完成此工作。但是,我已经看到有一个名为FSArchiver的工具 ,该工具可在数据放入后立即将数据还原到较小的驱动器(就像您的情况一样)。抱歉,由于我只使用过Clonezilla,所以我不能为您提供更多帮助,但是在链接和他们的论坛中有一些信息。


0

您可以使用dd复制磁盘。这篇文章介绍了如何使用Ubuntu Live CD克隆硬盘。


但是请记住,硬盘大小相等。尺寸不同会不会出现任何问题?
2013年

1
从较大的盘到一个较小的一个与复制dd推荐的,因为其结果是有可能被丢失和/或截短的分区(或多个),因此数据丢失。
罗德·史密斯

有关dd此帖子的更多详细解答:askubuntu.com/a/55908/58950
carnendil 2013年

尽管从理论上讲这可以回答问题,但最好在此处包括答案的基本部分,并提供链接以供参考。
RolandiXor
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.