我需要制作一个(最好)可安装的 80GB 硬盘映像,并将其存储在另一个硬盘驱动器上。有什么方法可以在不丢失数据的情况下做到这一点?
感谢到目前为止我收到的答案。由于电源按钮有问题,目前无法使用相关系统 :( [啊!],但这些信息真的很有用 =)!感谢到目前为止所有回答的人,如果其他人想给我一些提示,我会暂时保持开放状态,因为我仍然无法克隆驱动器。
我需要制作一个(最好)可安装的 80GB 硬盘映像,并将其存储在另一个硬盘驱动器上。有什么方法可以在不丢失数据的情况下做到这一点?
感谢到目前为止我收到的答案。由于电源按钮有问题,目前无法使用相关系统 :( [啊!],但这些信息真的很有用 =)!感谢到目前为止所有回答的人,如果其他人想给我一些提示,我会暂时保持开放状态,因为我仍然无法克隆驱动器。
使用
dd
(将 sda1 替换为要保存的分区):这将制作分区的可挂载映像。请注意,这可能需要一段时间,并且图像将具有分区的大小,而不是分区上的文件。在您的情况下,这将是 80GB。如果您压缩图像,它应该大约是您的硬盘已用空间的大小。
有关更全面的说明,请参阅DriveImaging:使用 dd 创建光盘映像。
通过 LAN 成像
在备份机器上运行:
在源机器上运行:
例如, Remastersys是一个程序,它可以创建整个硬盘驱动器的备份,然后将其保存到 LiveCD。您还可以使用它来创建自定义 Ubuntu 发行版。它有一个 CLI 和一个 GUI,所以请选择。在 GUI 中,选择第一个选项Backup。
要安装它,请打开软件中心然后编辑 -> 软件源 -> 其他软件(选项卡)并单击添加和粘贴
现在关闭软件源窗口并等待 repos 被刷新并安装 remastersys。
我的首选方法是使用 CloneZilla live CD。下载 .iso,使用 Brasero 将其刻录到磁盘,将其放入您要映像的机器中,重新启动,附加目标驱动器,然后按照提示进行操作。使用 dd 时要小心,它是一个非常低级的工具,错误很容易破坏数据。如果您想制作图像的逐字节副本,请选择 CloneZilla 的分区到分区选项。
最简单的方法是使用 dd,但常见的抱怨是 dd 在复制大磁盘时没有进度条。您可以将管道查看器 (pv)与 dd 结合使用以显示进度条和完成的 ETA。安装光伏
您正在复制的驱动器不需要安装,如果您正在从损坏的驱动器中恢复数据,最好不要以读/写模式安装它。您对驱动器所做的任何事情都有可能覆盖已删除的数据或对文件系统造成进一步损坏。此时进行位复制的目的是在不使数据面临进一步风险的情况下启用恢复。
在继续之前,您需要知道两件事是您正在复制的驱动器的设备名称及其实际大小。这两个都可以通过发出命令找到
这将显示连接到系统的驱动器及其大小(以 MiB 为单位)。
最简单的将磁盘复制到当前目录中的文件rescue.dd的命令是:
其中 /dev/sdx 需要更改为您正在复制的实际设备名称。您可能需要更改rescue.dd 的所有权,因为它将由root 拥有。
要获得方便的进度条和完成的 ETA,请通过 pv 管道 dd 命令:
其中 /dev/sdX 是您要复制的驱动器的设备名称,99999 是设备的大小,以 MiB(不是 MB)为单位。您的用户将拥有文件 rescue.dd,因为写入输出文件的第二次调用 dd 归您的用户所有,而不是 root。数据显示将是平均数据速率、进度条、完成百分比和预计完成时间。
如果您想查看进度,并且不介意命令行,PV 是您的朋友。我正在我的 Raspberry Pi 2 上试用 Ubuntu MATE,我想备份我的 SD 卡并编写新的,但我讨厌在不知道发生了什么的情况下运行大 IO。这是最快的工作:
恢复同样简单
在所有情况下,正在发生的事情
pv
是获取输入文件/设备并将其发送到标准输出,同时向标准错误提供进度报告。然后,xz 或 bzip2 从管道中获取标准输入(上一个命令的标准输出)并充当过滤器。输出重定向将文件放置到设备或图像文件中。我根本不知道它是用块操作的,但我怀疑 Linux 正在为我做所有的缓冲,并在硬件级别通过块读取/写入数据。
在这种情况下,使用 dd 有很大的优势吗?我可以查看我们是否正在读取或写入磁盘的特定部分(例如,如果您想从映像中提取分区,已将端点从 fdisk 或 parted 中剥离),但对于向整个磁盘发送垃圾邮件,我真的更喜欢更简单的命令。