正在尝试从我已识别为的驱动器中复制文件结构(和图像)
/dev/sda
(包含/dev/sda2
和/dev/sda5
)
该驱动器自称是/dev/sdc1
一个 1.8TB 的外部驱动器,剩余空间超过 600 GB。当我尝试在 GUI 中操作它时,我得到的只是一条错误消息,提示无法分配空间。正在复制和映像的驱动器约为 64GB。
源分区和驱动器列表未安装,目标驱动器已安装。我的 Ubuntu 所在的设备是/dev/sdb1
(SD 卡),并且已安装。
dd if=/dev/sda of=/dev/sdc1 conv,noerror,sync
我从上一个问题中知道会将 blah1 复制到 blah2,但我担心的是/dev/sdc1
目标上有 1.4T 的文件,我不想冒险覆盖数据,我需要一种可访问的格式,这意味着我可以打开图像并阅读内容并在需要时提取,这很可能是每天都会发生的事情。
我看到一个网站给出了一个例子
dd if=/dev/sdXY | zip --compression-method bzip2 image-file.zip -
即 zip,我需要的。我不知道如何表达/path/to/backup.img.gz
将图像放入文件夹中的目标/dev/sdc1
。我说的对吗
dd if=/dev/sda conv=sync,noerror | zip --compression-method bzip2 /dev/sdc1 /folder-name/image-file.zip
那是做事的方法吗?
另外,可以制作并安装 iso 吗?我正在寻找风险最小的路线,扩展分区中/dev/sda2
的分区 2/dev/sda
有我需要的数据。
使用终端,我该如何克服这些问题,我的尝试是对的还是错的?
编辑
我收到错误
cat /dev/sda | zip --compression-method bzip2 /media/mark/Seagate Expansion Drive/restore_point_image/restore/kingston_ssd_drive.img.zip
zip warning: name not matched: Expansion
zip warning: name not matched: Drive/restore_point_image/restore/kingston_ssd_drive.img.zip
zip error: Nothing to do! (/media/mark/Seagate.zip)
并尝试使用 gzip 导致相同的错误,因此我尝试使用
cat /dev/sda | zip --compression-method bzip /wwn-0x5000c500528232f8-part1/restore_point_image/restore/kingston_ssd_drive.img.zip
并出现错误
zip error: Nothing to do! (/wwn-0x5000c500528232f8-part1/restore_point.img.zip)
64GB 驱动器已卸载,外部驱动器安装器,一切似乎都设置好了,但是现在这样!
因此我尝试更改驱动器标签,但结果出现无法执行的警告,我当时并且仍然以 root 身份登录。
有什么建议么?
答案1
通过建议“引用”路径可以解决此错误
所以:
dd if=/dev/sda | gzip - c > "/media/mark/Seagate Expansion Drive/ssd.img.gz"
目前正在建立一个档案(最终)。
答案2
从终端复制驱动器(或其他任何东西)很容易,从 GUI 复制则不那么容易。对于简单的情况,您可以交替使用cat
或,这里为了简洁起见,我将使用。您需要以 root 身份打开终端(或使用)dd
cat
sudo -i
cat /dev/sda
将会把您的驱动器内容“按原样”传输到管道。>
将会把该数据流导向第二个进程或文件;因此如果您在此之后指定一个文件名,数据将会传输到那里;因此cat /dev/sda > mydrive.img
将会复制整个驱动器、启动、分区表等所有内容。
您可以重新安装分区映像,mkdir example ; mount mydrive.img example -o loop
但这不适用于整个驱动器;如果我们在上面使用了“/dev/sda1”,则可以。这适用于 .iso 文件。
您的问题中似乎对驱动器/分区(例如)和文件系统中的挂载位置存在混淆,/dev/sdc1
例如/home/mark/
- 您根本不想写入未挂载的驱动器,您需要将 /dev/sdc1 挂载到某处(也许是 /media/mark/something?),这样您就可以看到其中的文件,并在那里创建图像。
在管道中插入压缩装置(如上)很简单;所以我对你上述问题的“最终答案”是
cat /dev/sda2 | gzip >/mount/mark/somedrive/sda2.img.gz
您可以随意使用 gunzip 和循环挂载 - 您没有覆盖任何内容,只是创建了一个新文件,并且可以访问您的数据。