将我的内置硬盘映像复制到我的外置硬盘

将我的内置硬盘映像复制到我的外置硬盘

如何使用 dd 将图像从内置硬盘复制到外置硬盘?这是我的硬盘信息

    root@PartedMagic:~# lsblk 
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 931.5G  0 disk 
├─sda1   8:1    0  44.3M  0 part 
├─sda2   8:2    0   753M  0 part 
└─sda3   8:3    0 930.7G  0 part 
sdb      8:16   0 931.5G  0 disk 
└─sdb1   8:17   0 931.5G  0 part 
sr0     11:0    1   595M  0 rom  
loop0    7:0    0  39.3M  1 loop 
loop1    7:1    0 184.1M  1 loop 

sda 是我的内置硬盘

sdb 是我的外置硬盘

答案1

警告

dd是一个功能强大但也很危险的工具。在启动命令行之前,请反复检查以确保一切正确!它dd会毫无疑问地执行您的指令。一个小错误(输入错误)可能会导致您覆盖并破坏有价值的文档,例如家庭照片。

命令行

字符后面的文本#是人眼的注释,不被 shell 解释器使用。

如果你是当然/dev/sdx是正确的目标设备,您可以使用命令

sudo dd if=/dev/sda of=/dev/sdx bs=64K            # should be upper case K

将驱动器克隆到设备/dev/sdx,其中 x 可以是 b、c、...

如果你想创建一个图像文件(不压缩),你可以使用命令

sudo dd if=/dev/sda of=dd-clone.img bs=64K        # should be upper case K

如果要创建压缩映像文件,可以使用命令

sudo -s                                           # to get the root prompt `#`
 dd if=/dev/sda bs=64K | xz -c > dd-clone.img.xz
exit                                              # to get the user prompt `$`

可以使用以下方法提取此类压缩图像:

sudo -s                                          # get the root prompt `#`
 xzcat dd-clone.img.xz > dd-clone.img            # get a big uncompressed file
 xzcat dd-clone.img.xz | dd of=/dev/sdx  bs=64K  # clone to `/dev/sdx`    
exit                                             # get the user prompt `$`

尖端

如果您希望压缩更有效,则应使用零覆盖可用驱动器空间。您可以按以下方式执行此操作:

用于zerofreeLinuxext分区。

挂载其他分区,并对具有其他文件系统的分区使用以下命令行。假设您已在挂载点挂载了一个分区/mnt,并且整个驱动器都用于分区。检查您是否已在那里安装分区!否则,您将填满根分区,并且正在运行的操作系统将停止工作。

sudo dd if=/dev/zero of=/mnt/blank bs=4096   # Let it fill the partition
sudo rm /mnt/blank

工具在此链接:SanDisk SSD Plus:Linux 上的性能只有 Windows 上的一半?

选择

克隆兹拉是 的替代方案dd。它更安全,速度更快,尤其是在有大量可用空间的情况下。Clonezilla 将仅复制已使用的块(并跳过可用块),这将使复制速度更快,尤其是在主分区的相当一部分/dev/sda3是空闲的(未被文件使用)的情况下。

相关内容