我使用 Clonezilla 创建了几个映像。如果我没有 Clonezilla 的 Live CD,但我有另一个 Linux 发行版,例如 Knoppix,它没有 Clonezilla,是否有其他程序可以将映像还原到本地驱动器?我的理解是 Clonezilla 是 gparted 的自动化程序。我不知道。
答案1
是的,但是您需要使用正确的工具。
分区备份工具
克隆兹拉实际上,它更像是一个框架,而不是一个统一的应用程序,它使用多种工具之一来创建备份映像。这些工具包括:
- 部分克隆
- 部分图像
- 日
- ntfs克隆
你应该使用partclone
- 这是默认设置,通常如果你安装了clonezilla
它,你也会安装它。(另外,它显然比 ntfsclone 更好即使对于 NTFS 也是如此。)但在创建映像时,请注意调用的内容。如果已完成,请查看日志文件/var/log/clonezilla.log
并/var/log/partclone.log
仔细检查。
压缩方案/工具
默认情况下,图像使用 gzip 方案压缩,但理论上可以使用 bzip2、lzma 或其他方案压缩。
您可以使用以下实用程序检查图像的压缩格式file
:
$ file /path/to/my/image_file.aa
/path/to/my/image_file.aa: gzip compressed data, last modified: Sun Oct 15h 12:34:56 2017, max speed, from Unix
您使用的解压缩工具通常与压缩方案同名:gzip
对于 gzip,lzma
对于 lzma,bzip2
对于 bzip2。但是,有时您可能想运行其他东西。例如:pigz
是 gzip 的并行化、多核版本,其工作速度会更快(通常)。
检查图像文件名以确定使用哪些工具
Clonezilla 将分区备份放在您执行备份的任何设备上的 下的子目录中partimag/
。该目录中有许多我们现在不太关心的文件,以及(通常最大的)文件 - 实际的压缩克隆映像。此类文件路径的示例:
/mnt/sdc1/partimag/2017-10-15-01-my-partition-backup/sdb1.ext4-ptcl-img.gz.aa
因此,用于图像的目录是/mnt/sdc1/partimag
;我们的特定分区已备份到子目录2017-10-15-01-my-partition-backup
,并且在该目录中,压缩图像是sdb1.ext4-ptcl-img.gz.aa
。现在,这个名称告诉我们几件事:
- 该分区是块设备
sdb1
(不太有趣) - 文件系统类型是 ext4。
- 备份工具是partclone(
ptcl
简称) - 压缩方案是 gzip(
gz
-像扩展名一样)
此外,还有一个名为(是的,这是一个令人困惑的名字)的克隆过程日志,clonezilla-img
您也可以使用它来仔细检查。
重要的提示:我忽略了图像文件被分割成固定大小的碎片的可能性。这种情况需要针对 OP 的问题进行调查。
综合起来
假设您要将映像还原到设备/dev/sdd3
。在执行此操作之前,确保它已被卸载(例如unmount /dev/sdd3
)否则你会把事情搞糟。
现在您要解压映像,并将结果以恢复模式传输到分区备份工具,以写入相关的块设备。对于上面给出的示例,您将运行:
cd /mnt/sdc1/partimag/2017-10-15-01-my-partition-backup/ && \
pigz --decompress --stdout sdb1.ext4-ptcl-img.gz.aa \
| partclone.ext4 --restore --output /dev/sdd3
为什么要用这个管道?
- 该图像是经过 gzip 压缩的,因此我们想要调用
gzip
- 但pigz
速度更快。 - pigz 会将其输出写入其标准输出流,即管道。
- 这是一个 partclone 映像,因此我们调用
partclone
。实际上,partclone 有多个可执行文件,每个文件系统类型一个,我们需要 ext4 二进制文件。 partclone
,除非另有指示,否则从其标准输入(即管道)读取。
完成所有操作后,您可以尝试使用安装设备来mount -t ext4 /dev/sdd3 /path/to/mount/point
检查恢复是否顺利。您也可以使用fsck
文件系统检查工具。
答案2
Ubuntu论坛提供了访问 CloneZilla 图像内容的解决方案:
- 在Linux中准备一个大磁盘
- 假设您的图像是
/home/partimag/YOURIMAGE/
,并且图像是/home/partimag/YOURIMAGE/hda1.ntfs-img.aa
,hda1.ntfs-img.ab
...运行file /home/partimag/YOURIMAGE/hda1.ntfs-img.aa
以查看它是 gzip、bzip 还是 lzop 图像。 - 假设它是 gzip,那么你可以运行
cat /home/partimag/YOURIMAGE/hda1.ntfs-img.* | gzip -d -c | ntfsclone --restore-image -o hda1.img
- 然后你将有一个
hda1.img
可以通过它安装它mount -o loop -t ntfs hda1.img /mnt
。然后所有文件都在/mnt/
这个网站说了类似的事情,但附有ext3
图片:http://blog.christosoft.de/2012/05/mount-clonezilla-image-to-restore-single-file-browse/
但是,这些方法都不能用于恢复整个操作系统分区!