AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 1128998
Accepted
Джон Смит
Джон Смит
Asked: 2023-04-19 03:42:57 +0800 CST2023-04-19 03:42:57 +0800 CST 2023-04-19 03:42:57 +0800 CST

从损坏的 SSD 克隆数据

  • 772

SSD 进入只读模式,因此您需要将分区移动到工作的 SSD,但我遇到了 LVM 大小不同的情况:

#lvm pvscan

PV /dev/sdc3 VG pve lvm2 [<111.29 GiB / 13.87 GiB 免费]

PV /dev/sdb3 VG pve lvm2 [<118.74 GiB / 14.75 GiB 免费]

由于体积的差异,将无法通过 DD 进行传输。

sudo dd if=/dev/sdb3 of=/dev/sdc3 status=progress

还有哪些方法?也许有软件可以从 BIOS 下克隆分区?

UPD:两个 SSD 都通过 NVME-usb 适配器连接。我正在 iODD-2531 上通过 live linux 工作。反过来,我通过 ssh 连接到系统。

从 128GB 驱动器复制到 120GB 驱动器。如果第一个驱动器没有写保护,我可以尝试减小分区的大小,然后使用 DD 进行复制。

更新:

我连接了一个 500GB 的驱动器进行测试,并开始使用 DD 进行复制。结果我得到一个错误:

ubuntu@ubuntu:~$ sudo dd if=/dev/sdd of=/dev/sdc status=progress
456839680 bytes (457 MB, 436 MiB) copied, 53 s, 8.6 MB/s
459821568 bytes (460 MB, 439 MiB) copied, 57 s, 8.1 MB/s
461292032 bytes (461 MB, 440 MiB) copied, 59 s, 7.8 MB/s
569393664 bytes (569 MB, 543 MiB) copied, 72 s, 7.9 MB/s
709820928 bytes (710 MB, 677 MiB) copied, 85 s, 8.4 MB/s
dd: error reading '/dev/sdd': Input/output error
1388520+0 records in
1388520+0 records out
710922240 bytes (711 MB, 678 MiB) copied, 93.8062 s, 7.6 MB/s

在此处输入图像描述

这是复制错误。SSD 爱国者 p300,它持续退化,坏道超过 50%。该主题可以关闭。驱动器已死。谢谢。

lvm
  • 4 4 个回答
  • 945 Views

4 个回答

  • Voted
  1. BaronSamedi1958
    2023-04-19T03:54:34+08:002023-04-19T03:54:34+08:00

    Clonezilla 可能会在您的情况下派上用场。你绝对可以用它复制不匹配的分区!

    https://clonezilla.org/

    • 6
  2. Blockchain Office
    2023-04-19T10:16:26+08:002023-04-19T10:16:26+08:00

    磁盘克隆是制作分区或整个硬盘驱动器映像的过程。这对于将驱动器复制到其他计算机或用于备份和恢复目的很有用。

    注意:不建议在具有不同逻辑扇区大小的驱动器之间进行磁盘克隆。移动到具有较小逻辑扇区大小(例如,从 4096 字节到 512 字节)的驱动器将需要重新创建分区表,因为分区边界是在扇区号中指定的。如果文件系统的块大小小于目标驱动器的逻辑扇区大小或不能被它整除,则可能根本无法移动到具有更大逻辑扇区大小(例如,从 512 字节到 4096 字节)的驱动器。

    提示:随着时间的推移,文件系统会获得新功能并且 mkfs 实用程序会更改其默认值,但并非所有新功能都可以在不重新格式化的情况下启用。因此,当将数据移动到新驱动器时,不要克隆块设备或文件系统,而是考虑创建一个新文件系统并仅使用 rsync 等复制文件(及其属性、ACL、扩展属性等)。

    检查此来源以获取有关不同工具以及满足您需求的更多详细信息:

    磁盘克隆工具

    1.块级克隆

    dd

    dd 命令是一个简单但用途广泛且功能强大的工具。它可用于逐块地从源复制到目标,而不管它们的文件系统类型或操作系统如何。一种方便的方法是在实时环境中使用 dd,例如在 Live CD 中。

    救援

    GNU ddrescue 是一款能够忽略读取错误的数据恢复工具。ddrescue 与 dd 没有任何关系,只是两者都可用于将数据从一个设备复制到另一个设备。主要区别在于 ddrescue 使用复杂的算法从故障驱动器复制数据,从而尽可能减少额外的损坏。

    2.文件系统克隆

    e2image

    e2image 是包含在 e2fsprogs 中的用于调试目的的工具。它可以用于通过仅复制使用的块来高效地复制 ext2、ext3 和 ext4 分区

    3. 多功能克隆解决方案

    克隆尼西拉

    分区和磁盘映像/克隆程序,有助于系统部署、裸机备份和恢复。

    深度克隆

    Deepin 的备份和恢复工具。它支持克隆、备份和恢复磁盘或分区。

    FS存档器

    安全灵活的文件系统备份/部署工具

    盟多救援

    一种灾难恢复解决方案,用于创建可用于重新部署受损系统的备份介质。

    部分克隆

    一种可用于备份和恢复分区的工具,同时只考虑使用过的块。

    部分图像

    用于 Linux/UNIX 环境的 ncurses 磁盘克隆实用程序。

    重做备份和恢复

    从可引导 Linux CD 映像运行的备份和灾难恢复应用程序。

    系统焦油和恢复

    使用 tar 备份和恢复您的系统或使用 rsync 传输它

    另一个工具列表,具有一些功能

    磁盘克隆软件通过使用软件技术将数据从源复制到目标驱动器或磁盘映像来促进磁盘克隆操作

    磁盘克隆软件比较列表

    • 6
  3. user1686
    2023-04-19T21:04:37+08:002023-04-19T21:04:37+08:00

    您是否必须在分区级别执行此操作?相反,移动文件可能更容易,因为您不需要费心缩小旧文件系统或类似的东西。Acp -avx将通过移动操作系统来完成这项工作,但rsync -avxHAX如果需要中断和恢复可能会更好。

    1. 准备(mkfs)新文件系统。
    2. 挂载新旧文件系统并使用复制所有内容cp -avx /old/. /new/
    3. 编辑 /mnt/etc/fstab 和其他配置文件以匹配新文件系统的 UUID。
    • 4
  4. Best Answer
    Nikita Kipriyanov
    2023-04-19T15:23:04+08:002023-04-19T15:23:04+08:00

    您必须在使用 克隆 PV 之前缩小 PV dd,但 SSD 的只读状态禁止这样做。

    但是,使用叠加差异图像您仍然可以做到。大体上和我在另一个回答中详细描述的是一样的。我将在这里只描述差异。

    1. 使用物理支持设备创建一个差异覆盖划痕图像文件 - 旧 SSD,在qemu-img参数中有-b /dev/sdb3.
    2. 加载nbd驱动程序并将映像文件附加为 NBD 磁盘,扩展名为qemu-nbd. 该设备将是可读写的,它最初将包含支持设备(旧 SSD)的任何内容,但更改将写入 qcow2 文件(因此旧 SSD 的只读状态不会干扰对 NBD 的写入).
    3. 现在,可以缩小NBD 设备上的PV 。因为它不应该涉及太多的数据移动,所以 scratch qcow2 文件不会增长太多。缩小它,使其与第二个 SSD 上的分区匹配(或略小)。你必须使用类似的东西(如果你像上一步pvresize --setphysicalvolumesize 111G /dev/nbd0一样附加它)。nbd0
    4. 还原后,就可以dd从NBD设备上使用了。wipefs在克隆到它之前,最好不要使用目标分区并从中删除任何剩余的标签(使用)。

    相同的设置(只读支持设备和读写覆盖)可以使用设备映射器内置覆盖功能和稀疏覆盖图像而不是使用 Qemu 的图像工具和 NBD 来实现,如 RAID wiki 中所述,但我从来没有那样做的。

    • 3

相关问题

  • OpenBSD 和文件系统快照

  • 卷组空间不足。我该如何收回它?

  • LVM 快照是这样工作的吗?

  • LVM 和快照

  • 如何在 Ubuntu 上挂载 LVM 分区?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve