我正在尝试将 500 GB SSD 克隆到 1TB SSD。由于某种原因,当复制的数据达到8GB时,它不断失败。这是我尝试过的第三个 1TB SSD,它们都卡在同一个地方。我运行了以下命令:
dd if=/dev/sda of=/dev/sdb bs=1024k status=progress
Run Code Online (Sandbox Code Playgroud)
我还尝试使用 Clonezilla 克隆驱动器,但在同一位置失败。我使用 GParted 重新格式化驱动器并将其设置为 EXT4 文件系统,但它仍然卡在同一位置。Sda是内部的,sdb是外部插入的。
我收到的错误说:
7977443328 bytes (8.0 GB, 7.4 GB) copied, 208s, 38.4 MB/s
dd: error reading '/dev/sda': Input/output error
7607+1 records in
7607+1 records out
Run Code Online (Sandbox Code Playgroud)
感谢@roaima 在下面的回答。我能够运行ddrescue并且它复制了大部分数据。我取出内部 SSD,并通过 USB3 将新旧 SSD 连接到 CentOS 盒子。我运行了以下命令:
ddrescue -v /dev/sdb /dev/sdc tmp --force
Run Code Online (Sandbox Code Playgroud)
它运行了超过15个小时。一夜之间就停了。但好处是,当我再次运行命令时,它又从上次停止的地方恢复过来。
我使用它screen是为了避免第二次被锁定在一个会话中:)。我曾经Ctrl+c在 99.99% 的数据被拯救后退出 ddrescue 命令,因为它在那里挂了几个小时。我能够从新驱动器启动并且它立即启动。这是我退出ddrescue的状态:
Initial status (read from mapfile)
rescued: 243778 MB, tried: …Run Code Online (Sandbox Code Playgroud) 我正在使用 Clonezilla live USB 磁盘来重新映像系统。根据http://clonezilla.org/fine-print-live-doc.php?path=clonezilla-live/doc/99_Misc/00_live-boot-parameters.doc 中的解释,我的磁盘提示我包含菜单在syslinux.cfg除了将在UEFI机器的最新之外的所有系统(以及已在BIOS配置为从UEFI设备第一次开机),在那里我提示的grub.cfg菜单。
鉴于我对syslinux.cfg菜单进行了大量自定义,我想修改grub.cfg文件以仅自动链加载到 syslinux,以便syslinux.cfg在所有情况下都显示菜单。
这可能吗?如何?
磁盘上有 GRUB2,我的理解(从 Internet 上环顾四周)是可能的,但我还不明白如何。任何帮助表示赞赏。
编辑:
我想澄清一下,系统使用 grub 启动,没有问题选择grub.cfg默认情况下由 Conezilla 下载提供的菜单中的任何选项,但我想做的是显示 syslinux 的菜单(在syslinux.cfg)而不是grub.cfg
第二次编辑中的默认菜单,我是如何做到的:
最后,建议的解决方案对我不起作用,所以我只是让“EFI\boot”文件夹“不可用”(重命名);这样 UEFI 启动失败,系统从 syslinux 启动,就像在旧系统上一样:没有修改 BIOS,没有新菜单,没有链加载......
我正在考虑执行 Clonezilla 备份并想知道选择哪种备份模式。一般来说,Clonezilla 提供以下备份选项:
对应的还原方式有两种:
我正在寻找的是这两种选择的混合体。我希望能够在完全失败的情况下恢复特定分区和恢复我的完整硬盘驱动器。Clonezilla 是否支持这种开箱即用的恢复途径?
到目前为止,我还没有找到任何关于此的官方文档。我找到的唯一参考是2010年的邮件列表讨论,它指向imgconvert,这是一个自定义脚本,可以将磁盘映像转换为分区映像。不幸的是,我不知道这个脚本是否仍然有效。毕竟已经5岁了。
这就是为什么我想在这里询问是否有人对 Clonezilla 的这个用例有任何经验,并且可以担保这个解决方案(或不同的解决方案,就此而言)。
前段时间我用 Clonezilla 创建了一个 EXT4 分区的备份。现在硬盘坏了,我丢失了一些重要数据。
分区的镜像大小为 50GB。我试图将这个映像恢复到 200GB 的 HDD,但结果原始分区的大小为 500GB。由于我没有用于转储的 500GB 硬盘驱动器,我想出了如何通过传递-C给 partclone来强制 Clonezilla 忽略它。但是在恢复时它因错误而停止target seek ERROR:Invalid argument。
我可以想象分区上的数据是碎片化的,因此实际位图不适合。有解决方法吗?我有一个大约 600GB 的可用硬盘,但我不喜欢触摸分区表之类的东西。理想情况下是一种将其恢复为可安装映像的方法。(ISO或类似)
我正在使用 clonezilla-1.2.12 并且需要将 Broadcom 固件添加到 initrd 以便它可以进行网络引导。
(clonezilla 是基于 debian 的,debian 不再包含固件 blob,因为它们是非免费的。当然,clonezilla 也不包含。)
(我无法使用基于 Ubuntu 的 clonezilla,因为 Ubuntu 中存在一个错误,其中 Broadcom 5708 芯片组无法正常工作。)
我有一个看起来很好的过程:
~# mkdir /tmp/cz-newinitrd
~# cd /tmp/cz-newinitrd
/tmp/cz-newinitrd# xzcat /media/CLONEZILLA/live/initrd.img.orig > initrd
/tmp/cz-newinitrd# (cd /; find lib/firmware/bnx2 | cpio -o -H newc --append -O /tmp/cz-newinitrd/initrd)
/tmp/cz-newinitrd# xz -c initrd > /media/CLONEZILLA/live/initrd.img
Run Code Online (Sandbox Code Playgroud)
但是 linux 拒绝识别重做的 initrd:

我还尝试制作单个 cpio 存档(不使用 --append)并得到相同的结果。
如果我完全跳过修改存档而只是解压缩/重新压缩,我仍然会得到相同的结果。
这里出了什么问题?
我希望使用嵌入式 Linux 发行版(例如 Tiny Core)作为自动恢复类型工具。
基本上,用户会选择从启动菜单启动到 Tiny Core,然后如果插入的 USB 包含驱动器的幻影类型映像(它将包含一个唯一的 UUID,udev 规则将检测到它,然后它才会开始映像),它将恢复整个硬盘驱动器。现在我的问题是找到一个像 Ghost for Linux 这样的实用程序来进行映像。
关于 Ghost 最好的部分是
dd由于这个原因显然不是一个选项,它复制驱动器的每个扇区并且它没有动态调整大小的能力,因此如果由于某种原因目标驱动器甚至比源驱动器小 1 个字节,它也会失败。partimage有类似的问题。
CloneZilla 是我见过的唯一一款强大到足以执行此类操作的 Linux 工具,但显然它是自己的发行版,无法集成到 Linux 发行版中。由于 CloneZilla 只是一组低级工具,有人知道它实际上是如何克隆硬盘的吗?
做这样的事情的最佳方法是什么?多年来,我一直在寻找有关此问题的答案,但仍未找到可靠的解决方案。'直到今天,我们使用古老版本的 Ghost,因为它可以完美地映像我们需要的任何内容,但我们希望摆脱专有工具和 DOS,转向开源解决方案。
我有一个 CentOS 服务器的大型 Clonezilla 映像,它有一个 500GB 的驱动器,分区为引导、操作系统和数据分区。
我想挂载备份映像,以便我可以提取一些文件,因为我不再有合适的硬件或空间供 VM 将其恢复。
在备份的主目录中,我有以下 gzip 文件:
# ls -lh *gz*
-rwxrwxrwx 1 root root 13M Sep 19 11:30 sda1.ext3-ptcl-img.gz.aa
-rwxrwxrwx 1 root root 2.0G Sep 19 11:40 VolGroup00-LogVol00.ext3-ptcl-img.gz.aa
-rwxrwxrwx 1 root root 2.0G Sep 19 11:44 VolGroup00-LogVol00.ext3-ptcl-img.gz.ab
-rwxrwxrwx 1 root root 2.0G Sep 19 11:46 VolGroup00-LogVol00.ext3-ptcl-img.gz.ac
-rwxrwxrwx 1 root root 1.1G Sep 19 11:49 VolGroup00-LogVol00.ext3-ptcl-img.gz.aad
Run Code Online (Sandbox Code Playgroud)
根据这篇博客文章,我应该使用以下方法将这些文件合并为一个 gzip 文件:
cat sda1.ext4-ptcl-img.gz.a* | gzip -d -c > sda1.img
Run Code Online (Sandbox Code Playgroud)
以上所有文件都是我应该合并的文件,还是 sda1 是不必要的?大概因为它们是 ext3 格式的 …
所以我只是按照以下说明使用 VMWare Workstation 和 Clonezilla 将 Centos7“所有安装”VM 克隆到物理磁盘:https :
//www.howtoforge.com/converting-a-vmware-image-to-a-physical-machine -p2
现在,当克隆(物理磁盘)启动时,它会进入命令行:
Run Code Online (Sandbox Code Playgroud)dracut-initqueue[417]: Warning: Could not boot. dracut-initqueue[417]: Warning: /dev/disk/by-uuid/4b8b5627-9027-46f7-b722-61d3ddd28e74 does not exist Starting dracut emergency shell...
我试过的:
尝试启动到 USB 救援模式, chroot /mnt/sysimage ,以及:
mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r)-oh_crud.img
Run Code Online (Sandbox Code Playgroud)
进而
dracut /boot/initramfs-$(uname -r).img $(uname -r)
Run Code Online (Sandbox Code Playgroud)
...但我明白了:
猫:写错误:管道损坏
补充说明:
当我输入:
blkid
Run Code Online (Sandbox Code Playgroud)
我看到有问题的 HD 显示为/dev/block和 /dev/sdb`
我试过:
lshw -class disk
Run Code Online (Sandbox Code Playgroud)
但它说“找不到命令”。
救援外壳正在安装我的磁盘,我的/mnt/sysimage所有文件都在那里,所以它似乎正在查看并安装 HD。
我会/dev/sda1在 Ubuntu 14.04 上克隆我的分区。
我已经下载了 Clonezilla 以便克隆这个分区并能在以后重新安装它。
按照 CloneZilla 网站上的建议,我使用 Tuxboot 在我的 USB 密钥上安装了 CloneZilla iso。
我已经从 USB 密钥启动了我的电脑,它工作正常,我看到了一个类似 GRUB 的菜单,其中包含一个启动模式列表。
问题如下,我无法在任何模式下启动,出现以下错误:
overlayfs: missing 'workdir'
Run Code Online (Sandbox Code Playgroud)
我不知道这个问题是我第一次尝试克隆分区。
我刚买了一台带有 500GB SSD 的新笔记本电脑。我想做的第一件事是克隆硬盘驱动器,因为我想拥有整个系统的原始副本。
为了做到这一点,我用 Clonezilla 闪存了一个 USB 闪存盘,并尝试使用 device-imageoption 和beginner mode.
我希望有一个与源 SSD 大小相同的图像(类似于 .img.zp 文件),但是我最终得到了一个文件夹,里面有几个文件,只需要 14GB 的空间,只花了 10 分钟。整个过程。
这是正常的还是我在此过程中搞砸了什么?
我在配备 250 GB SSD 的 ThinkPad T420 上运行 Debian Buster。由于我需要更多磁盘空间,我使用 Clonezilla 将我当前的 Debian 安装从内部 250 GB SSD 克隆到通过 USB 到 SATA 适配器连接的新 500 GB SSD。之后我将 250 GB SSD 替换为 500 GB SSD,并使用 GParted live 增加扩展分区 (/dev/sda2) 和 LVM2 PV 分区 (/dev/sda5) 的大小。一切正常,系统重新启动并运行。不幸的是,我还不能使用新空间,因为根 LVM 也必须调整大小:
user@debianbook:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 465,8G 0 disk
??sda1 8:1 0 243M 0 part /boot
??sda2 8:2 0 1K 0 part
??sda5 8:5 0 465,5G 0 part
??sda5_crypt 254:0 …Run Code Online (Sandbox Code Playgroud)