linux下DD 命令常用操作 —— 筑梦之路

DD命令介绍

dd命令是LINUX下的一个命令行工具,用于数据转换和处理。dd代表“数据复制”,它可以从一个设备或文件中读取数据,然后将数据写入到另一个设备或文件中。dd命令可以用于多种用途,包括以下几个方面:

  • 磁盘备份和克隆

  • 数据恢复

  • 空白文件创建

  • 密码破解

DD命令的特性

  • 灵活性:可以用于多种数据处理和转换操作,包括备份和克隆磁盘、数据恢复、磁盘清除、空白文件创建等。

  • 可靠性:使用底层的块设备接口读写数据,能够完整地复制数据,保证数据的一致性和完整性。

  • 高效性:可以使用多种缓存机制,提高数据传输速度,使得数据复制更加高效。

  • 灵敏度:可以使用不同的块大小和缓存大小,根据需要进行调整,适应不同的硬件和数据传输需求。

  • 通用性:可以在不同的操作系统和硬件平台上运行,具有很强的通用性。

DD命令常用参数

dd命令可以用指定大小的块来拷贝一个文件,并在拷贝的同时进行指定的转换。

参数 注释
if=文件名 输入文件名,缺省为标准输入。即指定源文件。< if=input file >
of=文件名 输出文件名,缺省为标准输出。即指定目的文件。< of=output file >
ibs=bytes 一次读入bytes个字节,即指定一个块大小为bytes个字节
obs=bytes 一次输出bytes个字节,即指定一个块大小为bytes个字节
bs=bytes 同时设置读入/输出的块大小为bytes个字节
cbs=bytes 一次转换bytes个字节,即指定转换缓冲区大小
skip=blocks 从输入文件开头跳过blocks个块后再开始复制
seek=blocks 从输出文件开头跳过blocks个块后再开始复制
status=progress 显示进度信息,例如每秒钟复制的字节数和进度百分比等

DD命令使用示例

# 复制文件内容

dd if=input.txt of=output.txt bs=1024

将input.txt文件复制到output.txt文件中,块大小为1024字节

# 将一个磁盘的内容复制到另一个磁盘中

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

将/dev/sda磁盘的内容复制到/dev/sdb磁盘中,块大小为4096字节

# 将一个磁盘的内容复制到一个文件中

dd if=/dev/sda of=image.img bs=4096 count=1000 status=progress

将/dev/sda磁盘的前1000个块复制到image.img文件中,块大小为4096字节,并显示进度信息

----------------------------

# 创建空文件

dd if=/dev/zero of=newfile bs=1M count=10

创建一个名为newfile的文件,大小为10MB,其中每个块的大小为1MB

# 磁盘克隆

dd if=/dev/sda of=/dev/sdb bs=4096 conv=noerror,sync

将/dev/sda磁盘的内容复制到/dev/sdb磁盘中,块大小为4096字节。conv=noerror,sync表示在复制过程中忽略读取错误,并将输出同步到磁盘中

#  数据恢复

dd if=/dev/sda1 of=/mnt/usbdrive/recovered_data.img bs=4096 conv=noerror,sync

将/dev/sda1分区的内容复制到/mnt/usbdrive/recovered_data.img文件中,块大小为4096字节。conv=noerror,sync表示在复制过程中忽略读取错误,并将输出同步到磁盘中

#  密码破解

dd if=/dev/sda | john --stdin

将/dev/sda磁盘的内容传递给john密码破解工具,用于破解磁盘中的密码




ddrescue命令:用于数据恢复,可以在损坏的磁盘上执行数据恢复操作

你可能感兴趣的:(linux系统运维,linux,运维,服务器)