首页 > 解决方案 > Linux - dd 命令失败并出现错误 [设备上没有剩余空间]

问题描述

我目前正在尝试创建 USB 密钥的映像以创建备份。USB 密钥为 128G,目标外置硬盘大约有 300G 可用。

我正在使用 Cygwin,这是我所做的,您可以理解:

我通过键入将自己放在外部硬盘驱动器上: cd E: 我最终在 /cygdrive/e 这是我的硬盘驱动器下。usb密钥在/cygdrive/d下

这是 cat /proc/partitions 给出的内容:

$ cat /proc/partitions major minor #blocks name win-mounts

8     0 250059096 sda
8     1    266240 sda1
8     2     16384 sda2
8     3 248955904 sda3   C:\
8     4    819200 sda4
8    16 125091840 sdb
8    17 125091584 sdb1   D:\
8    32 312571224 sdc
8    33 312568641 sdc1   E:\

所以这是我启动的 DD 命令:

dd if=/dev/sdb1 | pv -s 128G | dd of=backup.usb.img bs=1M

它每次都开始并进展顺利,直到失败并出现错误:

dd: error writing ‘backup.usb.img’: No space left on device

我试了好几次,每次读到4,2G左右都失败了。我的硬盘有300G可用所以我不明白...

为什么 dd 命令失败,没有剩余空间,而目标有足够的可用空间?

非常感谢

标签: cygwindd

解决方案


确实,“那个人”的回复解决了我的问题。

我将我的 DD 格式化为 exFat,以便它也可以在 MacOS 上使用,并且 DD 命令运行良好。

还要感谢“Matzeri”,因为我还删除了中间的 pv。我们可以使用 : status=progress 它只需要 sys-apps/coreutils >= 8.24

谢谢 !


推荐阅读