什么是命令dd if = / dev / sdb呢?

时间:2012-08-08 17:46:12

标签: linux bash dd

我已经格式化了我的pendrive,它位于/ dev / sdb中。当我执行命令 dd if = / dev / sdb 命令时,它会在控制台中继续打印一些垃圾。我的疑问是,当我格式化pendrive并执行此命令时,它不应该打印任何东西。但为什么要打印?

3 个答案:

答案 0 :(得分:4)

格式化驱动器(通常)不会将数据清零;它只是将数据写入驱动器上的某些位置,以便您的操作系统认为没有分配空间。

如果您真的想将数据清零,可以运行:

dd if=/dev/zero of=/dev/sdb bs=4096

这会将零写入/dev/sdb

答案 1 :(得分:2)

格式化设备不会消除设备上的先前数据。所有格式化都将覆盖文件系统数据,使其标记为空。任何以前未被覆盖的数据在技术上仍然存在。此外,dd将打印出原始数据的字节,因此即使用全0覆盖你的驱动器,dd也只会返回一大堆零。

答案 2 :(得分:0)

dd将打印到STDOUT(终端窗口),除非您为其提供输出文件。

示例:

dd if=dev/sdb of=backup.img

术语:

  • dd:磁盘复制器
  • 如果:输入文件
  • of:输出文件