Linux下的dd命令

简介: Linux下的dd命令

简介

dd命令是Linux下的一个重要的磁盘操作命令,它的主要作用是备份和复制磁盘。

dd的语法是:

dd if=输入文件的名称 of=输出文件的名称 [参数=值]

if=输入文件的名称:指定输入文件的名称,可以是文件、设备、目录等

of=输出文件的名称:指定输出文件的名称,可以是文件、设备、目录等

参数=值:可选,用来控制dd的操作

常用的参数有:

bs=字节数:一次读写的字节数,默认为512字节

count=块数:复制的块数

conv=转换格式:指定输入和输出的数据的转换格式,例如ascii,ebcdic等

ibs=输入字节数:每次读取的字节数

obs=输出字节数:每次输出的字节数

seek=块数:从输入文件开头跳过的块数

skip=块数:从输出文件开头跳过的块数

status=noxfer:不显示转换统计信息

举例

例如:

  • 备份磁盘:
dd if=/dev/sda of=/dev/sdb
  • 备份文件:
dd if=input.iso of=input.bak
  • 磁盘转磁盘(4M字节每次读写):
dd if=/dev/sda of=/dev/sdb bs=4M
  • 跳过输入文件的前100个块,从输出文件开始的第50个块开始写入:
dd if=input.iso of=input.bak skip=100 seek=50
  • 磁盘转文件(磁盘的前1024个字节备份到文件):
dd if=/dev/sda of=disk.bak bs=1024 count=1

所以,dd命令是Linux下非常强大的备份和磁盘复制命令,要谨慎使用。

一些其他的使用场景

1.磁盘克隆:将一个磁盘的内容完全克隆到另一个磁盘,使用命令:dd if=/dev/sda of=/dev/sdb bs=64K

2.创建启动U盘:将ISO镜像写入U盘,使U盘变成启动盘,使用命令:dd if=系统镜像.iso of=/dev/sdb bs=64K

3.磁盘擦除:使用随机数据覆盖整个磁盘,彻底抹除磁盘数据,使用命令:dd if=/dev/urandom of=/dev/sdb bs=64K

4.文件固定长度截断:将文件截断到指定长度,使用命令:dd if=input.file of=output.file bs=64K count=10 这将input.file截断到10个块,每个块64K

5.磁盘分区表擦除:将磁盘分区表擦除,让磁盘回到未分区状态,使用命令:dd if=/dev/zero of=/dev/sdb bs=512 count=1 conv=notrunc

6.创建交换分区:在空磁盘上创建交换分区,使用命令:dd if=/dev/zero of=/dev/sdb1 bs=1024 count=40960 这将在sdb1上创建40G交换分区

67.文件内容替换:使用命令:dd if=input.file of=output.file bs=10 conv=notrunc,这会从输入文件input.file中读10个字节,并覆盖输出文件的前10个字节。可以用于隐藏文件内容。

8.测试磁盘速度:使用命令:dd if=/dev/sda of=/dev/null bs=64K count=10k,这会从磁盘读取10*1024个块,每个64K,并丢弃输出,可以测试磁盘读速度。

9.数据保存为二进制文件。echo “abc”|dd of=adc.bin


相关文章
|
5天前
|
NoSQL 关系型数据库 MySQL
Linux学习记录---(1、基本命令)
该博客文章提供了Linux系统中基本命令的使用记录,包括文件和目录操作、Redis服务管理、MySQL数据库操作以及Tomcat服务器的启动和检查。
Linux学习记录---(1、基本命令)
|
2天前
|
Linux
会玩这10个Linux命令,一定是个有趣的IT男!
会玩这10个Linux命令,一定是个有趣的IT男!
|
6天前
|
运维 Ubuntu Linux
Linux系统之ncdu命令的基本使用
【8月更文挑战第8天】Linux系统之ncdu命令的基本使用
14 2
Linux系统之ncdu命令的基本使用
|
11天前
|
数据可视化 Linux 测试技术
7zip压缩工具的Linux命令
本文介绍了如何在Linux系统中使用7zip压缩工具,包括通过brew安装、使用基本命令进行文件压缩、解压、列出存档内容、测试存档完整性以及进行性能基准测试等操作。
47 3
7zip压缩工具的Linux命令
|
2天前
|
安全 Linux 开发者
Linux笔记之ldd命令详解
`ldd`命令是Linux环境下一个非常实用的工具,用于显示一个程序运行时所需的共享库依赖。它帮助开发者和系统管理员快速诊断程序运行问题,特别是在处理"找不到库文件"或者"错误的库文件版本"等错误时。然而,出于安全的考虑,对于不信任的可执行文件,应该慎用 `ldd`命令,可以考虑使用其他工具如 `objdump`。总的来说,懂得如何妥善且安全地使用 `ldd`,对于维护一个稳定和高效的Linux系统来说,是非常重要的。
17 9
|
2天前
|
Linux Shell
linux命令
linux命令是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心,与之前的DOS命令类似。linux命令在系统中有两种类型:内置Shell命令和Linux命令。
|
3天前
|
移动开发 运维 网络协议
运维必备 | Linux netstat命令详解
运维必备 | Linux netstat命令详解
|
3天前
|
Linux
真香~ Linux vi常用命令汇总!
真香~ Linux vi常用命令汇总!
|
3天前
|
Linux Shell
linux命令
linux命令是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心,与之前的DOS命令类似。linux命令在系统中有两种类型:内置Shell命令和Linux命令。
|
7天前
|
运维 安全 Linux
【超实用秘籍】Linux文件传输新高度:10个scp命令让你瞬间变身文件传输达人,从此告别繁琐操作!
【8月更文挑战第13天】文件传输是运维工作的核心部分,尤其对Linux用户来说,了解高效且安全的传输方法非常重要。本文介绍10种scp命令的应用技巧,涵盖基础文件传输、密钥认证、目录复制等场景,助你灵活运用这一基于SSH协议的安全工具。从简单的文件传输到复杂的多主机文件迁移,scp都能轻松应对。通过本文的学习,你将能更熟练地使用scp命令,提高工作效能。
26 6