步骤从USB创建DD图像文件并将图像还原到其他USB


9

我已经成功地(创建了文件,ubuntu不会发出任何错误消息)从整个持久性ubuntu live usb创建了映像。(sdc1)-文件ubuntu1.img为4.3gb,因此可以合理地相信该命令

/ media / images / tst#dd if = / dev / sdc1 of = / media / images / tst / ubuntu1.img

格式正确,并已成为USB驱动器的有效映像。

所以......我尝试将图像放在新的fat32格式的USB上。原始USB和新USB都有2个分区,两个USB上的第一个分区均为ubuntu live。复制到新USB上的分区比复制的原始USB分区稍大(因此大小应该不成问题)。

dd命令将图像复制到usb(我cd到ubuntu1.img所在的文件夹)

/ media / images / tst#dd if = ubuntu1.img of = / dev / sdc1

此过程也不会显示任何错误,大约20分钟后,结果是

8388607 + 1条记录在

8388607 + 1记录了

已复制4294967295字节(4.3 GB),1615.69 s,2.7 MB / s

但是... USB是无用的BIOS抱怨缺少GRLDR

我已经尝试过使用Ubuntu,Kali,Backtrack,Slax和一个或两个其他Linux发行版。我已经尝试过使用多台PC,所有这些都可以从实时USB正常启动。我发现可靠地复制linux live usb的唯一方法是在Windows:((

如果有人成功使用dd将linux live usb(any)发行版复制到映像文件,然后从同一映像文件复制到新的USB .........请分享一些智慧-预先感谢您的阅读并花时间回复


您是否要创建一个经过稍微修改的实时发行版的可引导USB?
查尔斯·格林

持续性的实时发行版已被修改
怀疑

Answers:


11

您克隆了“ sdc1”,它是一个分区,但是听起来您正在尝试克隆一个操作系统,这意味着您还需要启动程序。

该信息的位置将根据您对事物的设置方式而有所不同。例如,如果您使用MBR分区表,则将其存储在驱动器MBR中;如果您将GPT与BIOS一起使用,则将其存储在驱动器的受保护MBR中;如果您将GPT与UEFI一起使用,则将其存储在ESP中;如果您正在链式加载,则可以在分区MBR和驱动器MBR上具有启动数据。

DD可用于克隆MBR扇区或ESP。另外,您也可以克隆整个驱动器,以免制作多个映像。我个人建议避免克隆MBR,因为我只尝试了一次,但没有成功。ESP或整个驱动器始终对我来说没问题。

我下面的示例使用图像的创建,然后从图像中还原,因为这是您所使用的方法,但是如果您可以将两个USB棒同时连接到计算机,则可以直接从1克隆到另一个,而无需进行记录制作图像。

脚步:

备份驱动器MBR和分区表:

  1. 在终端中输入“ sudo -i”。

  2. 在终端中输入“ dd if=/dev/sda of=/media/location/backup.img bs=512 count=1”。

还原驱动器MBR:

  1. 在终端中输入“ sudo -i”。

  2. 在终端中输入“ dd if=/media/location/backup.img of=/dev/sda bs=446 count=1”。

备份分区MBR和分区表:

  1. 在终端中输入“ sudo -i”。

  2. 在终端中输入“ dd if=/dev/sda1 of=/media/location/backup.img bs=512 count=1”。

恢复分区MBR:

  1. 在终端中输入“ sudo -i”。

  2. 在终端中输入“ dd if=/media/location/backup.img of=/dev/sda1 bs=446 count=1”。

备份ESP:

  1. 在终端中输入“ sudo -i”。

  2. 在终端中输入“ dd if=/dev/sda1 of=/media/location/backup.img”。

[此过程与克隆任何其他分区完全相同。]

还原ESP:

  1. 在终端中输入“ sudo -i”。

  2. 在终端中输入“ dd if=/media/location/backup.img of=/dev/sda1”。

备份分区:

  1. 在终端中输入“ sudo -i”。

  2. 在终端中输入“ dd if=/dev/sda1 of=/media/location/backup.img”。

还原分区:

  1. 在终端中输入“ sudo -i”。

  2. 在终端中输入“ dd if=/media/location/backup.img of=/dev/sda1”。

[建议措施] 备份驱动器:

  1. 在终端中输入“ sudo -i”。

  2. 在终端中输入“ dd if=/dev/sda of=/media/location/backup.img”。

[建议措施] 还原驱动器:

  1. 在终端中输入“ sudo -i”。

  2. 在终端中输入“ dd if=/media/location/backup.img of=/dev/sda”。

笔记:

  • 建议DD作为root用户运行,而不是sudo运行,否则可能会发生中断。在Ubuntu上,这很难,因为您不能以root用户身份登录。

  • 还原MBR时,可以使用512或446。446仅还原MBR(写入引导程序代码和引导加载程序的位置)。512将还原MBR和分区表。

  • 您不必制作图像;您可以直接从源克隆到目标。

资料来源:

其他资源:


@unorthodox上的点- 推荐的操作确实成功了,我实际上有一个具有两个分区的持久性活动USB,因此我尝试结合使用“ dd if = / dev / sda1 of = / media / location / backup.img bs = 512 count = 1 ”和“ dd if = / dev / sda1 of = / media / location / backup.img”。仅备份实时持久性Ubuntu发行版分区及其mbr + partition表。然后将分区还原到特定分区中的另一个USB上。“ dd if = / dev / sda1的/media/location/sda1part.img”。这也起作用!!但我不需要还原mbr + partition表,我认为那很奇怪?接下来,我将尝试通过管道传输到gzp ...
怀疑
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.