Linux中的’dd’命令

dd 是用于Unix和类Unix操作系统的命令行实用程序,其主要目的是转换和复制文件。

null
  • 在Unix上,硬件设备驱动程序(如硬盘驱动器)和特殊设备文件(如/dev/zero和/dev/random)与普通文件一样出现在文件系统中。
  • dd还可以从这些文件中读取和/或写入这些文件,前提是功能在其各自的驱动程序中实现
  • 因此,dd可用于备份硬盘驱动器的引导扇区和获取固定数量的随机数据等任务。
  • dd程序还可以在复制数据时对其执行转换,包括字节顺序交换以及与ASCII和EBCDIC文本编码之间的转换。

用法: dd的命令行语法不同于许多其他Unix程序,因为它使用 选项=价值 它的命令行选项,而不是更标准的 -期权价值 –选项=价值 格式。默认情况下,dd从stdin读取数据并写入stdout,但可以通过使用if(输入文件)和of(输出文件)选项来更改这些数据。

dd命令的一些实用示例:

  1. 要备份整个硬盘,请执行以下操作: 要将硬盘的整个副本备份到连接到同一系统的另一个硬盘,请执行dd命令,如图所示。在这个dd命令示例中,源硬盘的UNIX设备名为/dev/hda,目标硬盘的设备名为/dev/hdb。
    # dd if = /dev/sda of = /dev/sdb
    
    • “如果” 表示输入文件,以及 “当然” 表示输出文件。那么 /发展/社会发展局 将于 /开发/可持续发展局 .
    • 如果有任何错误,上述命令将失败。如果你给出参数 “conv=noerror” 然后,如果出现读取错误,它将继续复制。
    • 输入文件和输出文件应该非常仔细地提及。以防万一,你在目标中提到源设备,反之亦然,你可能会丢失所有数据。
    • 要使用下面给出的dd命令将硬盘复制到硬盘,sync选项允许您使用同步I/O复制所有内容。
      # dd if = /dev/sda of = /dev/sdb conv=noerror, sync
      
  2. 要备份分区,请执行以下操作: 可以在输入文件中使用分区的设备名,在输出文件中,可以指定目标路径或图像文件,如dd命令所示。
    # dd if=/dev/hda1 of=~/partition.img
    
  3. 要创建硬盘映像,请执行以下操作: 您可以创建硬盘的映像文件并将其保存在其他存储设备中,而不是备份硬盘。将数据备份到磁盘映像有很多优点,其中一个是易于使用。这种方法通常比其他类型的备份更快,使您能够在意外灾难发生后快速恢复数据。它创建硬盘/dev/hda的映像。
    # dd if = /dev/hda of = ~/hdadisk.img
    
  4. 要使用硬盘映像进行恢复,请执行以下操作: 要使用另一个硬盘的映像文件还原硬盘,可以使用以下dd命令
    # dd if = hdadisk.img of = /dev/hdb
    

    图像文件hdadisk。img文件是a/dev/hda的映像,因此上面的命令将把/dev/hda的映像恢复到/dev/hdb。

  5. 要创建光盘备份: dd命令允许您从源文件创建iso文件。因此,我们可以插入CD并输入dd命令来创建CD内容的iso文件。
    # dd if = /dev/cdrom of = tgsservice.iso bs = 2048
    

    dd命令读取一个输入块并对其进行处理,然后将其写入输出文件。可以指定输入和输出文件的块大小。在上面的dd命令示例中,参数 “bs” 指定输入和输出文件的块大小。所以dd使用 2048字节 作为上述命令中的块大小。

参考资料:

本文由 基什莱·维尔马 .如果你喜欢GeekSforgek,并想贡献自己的力量,你也可以使用 贡献极客。组织 或者把你的文章寄到contribute@geeksforgeeks.org.看到你的文章出现在Geeksforgeks主页上,并帮助其他极客。

如果您发现任何不正确的地方,或者您想分享有关上述主题的更多信息,请写下评论。

© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享