Linux中dd命令详解

Linux 中 dd 命令详解(全面版)

dd是 Linux 中一个非常强大且危险的低级数据复制和转换工具,全称“data duplicator”“disk destroyer”(因误操作可毁盘而得外号)。它以块为单位直接读写设备或文件,绕过文件系统缓存,适合备份、克隆磁盘、擦除数据、制作启动盘等场景。

基本语法
dd [参数] if=输入源 of=输出目标 [其他选项]
  • if(input file):输入文件或设备(默认标准输入)。
  • of(output file):输出文件或设备(默认标准输出)。
  • bs(block size):每次读写的块大小(单位:字节)。
  • count:复制的块数量。
  • skip:从输入跳过指定块数。
  • seek:在输出跳过指定块数。
  • conv:转换选项(如 notrunc、sync)。

注意:dd 默认不显示进度,使用时需谨慎,写错 of 参数可能直接毁坏系统磁盘

常用参数详解
参数说明示例值
if=FILE输入文件或设备if=/dev/sda
of=FILE输出文件或设备of=/dev/sdb
bs=BYTES块大小(同时设置 ibs 和 obs),推荐使用 4K、1M 等bs=4M
ibs=BYTES输入块大小ibs=512
obs=BYTES输出块大小obs=4M
count=N复制 N 个块count=100
skip=N从输入开头跳过 N 个块skip=1
seek=N在输出开头跳过 N 个块(不覆盖前 N 块)seek=1024
conv=OPTION转换选项,多个用逗号分隔conv=notrunc,noerror,sync
status=LEVEL显示进度(Linux 现代版本支持)status=progress

conv 常见选项

  • notrunc:不截断输出文件(默认会截断)。
  • noerror:出错时继续执行(忽略读错误)。
  • sync:每个块不足时用 NULL 填充(配合 noerror 防止数据错位)。
  • fdatasync:写完后同步数据到磁盘。
  • sparse:尝试创建稀疏文件(节省空间)。
经典使用场景与示例
  1. 完整克隆硬盘(磁盘到磁盘)

    sudoddif=/dev/sdaof=/dev/sdbbs=64Kconv=noerror,syncstatus=progress
    • 将整个 sda 磁盘克隆到 sdb(包括分区表)。
    • 极度危险:确认 of 设备正确!
  2. 备份整个磁盘到镜像文件

    sudoddif=/dev/sdaof=/backup/sda-full.imgbs=4Mstatus=progress
  3. 从镜像文件恢复到磁盘

    sudoddif=/backup/sda-full.imgof=/dev/sdbbs=4Mstatus=progress
  4. 制作 Linux USB 启动盘(推荐方式)

    sudoddif=ubuntu-24.04-desktop-amd64.isoof=/dev/sdcbs=4Mstatus=progress&&sync
    • 注意:of= 是整个设备(如 /dev/sdc),不是分区(如 /dev/sdc1)。
    • 完成后执行 sync 确保数据刷盘。
  5. 备份 MBR(主引导记录,前 446 字节)

    sudoddif=/dev/sdaof=mbr.binbs=446count=1
  6. 备份整个分区表 + MBR(前 512 字节)

    sudoddif=/dev/sdaof=partition-table.binbs=512count=1
  7. 擦除磁盘(安全删除数据)

    • 快速清零(不彻底,但快):
      sudoddif=/dev/zeroof=/dev/sdabs=4Mstatus=progress
    • 彻底擦除(用随机数据,防恢复):
      sudoddif=/dev/urandomof=/dev/sdabs=4Mstatus=progress
  8. 只复制指定大小的数据

    sudoddif=/dev/sdaof=first-10GB.imgbs=1Gcount=10
  9. 跳过开头部分复制(例如跳过 MBR)

    sudoddif=/dev/sdaof=data-part.imgbs=512skip=1
  10. 测试磁盘读写速度

    • 写速度:
      ddif=/dev/zeroof=testfilebs=1Gcount=1oflag=dsync
    • 读速度(需先清缓存):
      sudosh-c"echo 3 > /proc/sys/vm/drop_caches"ddif=testfileof=/dev/nullbs=1G
实用技巧与注意事项
  • 显示进度:现代 dd(GNU coreutils 8.24+)支持status=progress,强烈推荐加。
  • 加速技巧
    • 使用较大 bs(如 4M、64M),但不要过大(内存不足会慢)。
    • 添加oflag=direct绕过缓存(写操作更快)。
  • 安全建议
    • 先用lsblkfdisk -l确认设备名。
    • 使用pv工具显示更美观的进度条:
      sudoaptinstallpvsudoddif=/dev/sda|pv|ddof=/dev/sdbbs=4M
    • 或直接用pv
      sudopv/dev/sda>/dev/sdb
  • 中断恢复:dd 被 Ctrl+C 中断后,可用kill -USR1 $(pidof dd)发送信号显示当前进度。
  • 常见错误
    • “No space left on device”:输出磁盘空间不足。
    • “Input/output error”:硬件故障,加conv=noerror可继续。
替代工具推荐
  • 磁盘克隆ddrescue(更智能,擅长坏道磁盘恢复)。
  • 启动盘制作cp、Rufus(Windows)、Etcher(图形化)。
  • 快速复制rsynccp(文件级更快)。

总结:dd 是 Linux 系统管理员的瑞士军刀,但“用得好是神器,用错毁全盘”。新手请先在虚拟机或非重要设备练习,并三思而后 dd

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1119262.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

高次函数模型的选择与拟合解析,如何识别并拟合3+次函数(超详细,零基础可懂)

当数据可能符合三次(yax3bx2cxdyaxbxcxdyax3bx2cxd)、四次(yax4bx3cx2dxeyax⁴bxcxdxeyax4bx3cx2dxe)甚至五次函数时,核心思路是:先通过可视化误差指标判断函数“复杂度”,再用“特征升维线性回…

一边是35岁危机,一边是AI高薪。普通程序员如何选对路、不掉队?

35岁,程序员的十字路口,焦虑与机遇并存。技术浪潮汹涌,经验与智慧沉淀,适者生存。AI红利,工具赋能,引领未来。 35岁程序员危机,时代洪流中的思考 一、年龄与技能的双重焦虑 技术浪潮的冲击。新技…

C# 里弹出“确定”“取消”对话框

C# 中弹出“确定”“取消”对话框的几种常用方法 C# 中最常用、最简单的弹出“确定/取消”对话框就是使用 MessageBox 类(位于 System.Windows.Forms 命名空间)。以下是详细说明和示例。 方法一:最常用 - MessageBox.Show(推荐&…

springboot图书电子商务网站的设计与实现(11647)

有需要的同学,源代码和配套文档领取,加文章最下方的名片哦 一、项目演示 项目演示视频 二、资料介绍 完整源代码(前后端源代码SQL脚本)配套文档(LWPPT开题报告)远程调试控屏包运行 三、技术介绍 Java…

SEO插件评分全绿但排名差丨3个真正的问题可能在这

当你的SEO插件显示所有指标都达标时,网站排名却纹丝不动,这种落差感可能比优化失误更让人焦虑。 事实上,像Yoast这类工具的“全绿评分”只是SEO的“基础体检”,很多运营者陷入“评分陷阱”,误以为标题长度合格、关键词…

限时公开!6款AI论文神器实测,查重率低于5%!

紧急预警:论文DDL只剩72小时?这些工具能救你! 凌晨3点的图书馆、导师催稿的红色感叹号、查重报告上飘红的“30%重复率”——这是不是你现在的真实写照? 毕业倒计时最后10天,论文卡壳延毕风险!你以为“慢慢…

2026届校园招聘大战开启!阿里、京东、字节等大厂争抢哪类人才?揭秘校招最新趋势!

日前,阿里、京东、字节跳动、美团、小米、滴滴等头部互联网科技公司相继启动2026届校园招聘计划,累计招聘人数超5万。 从各企业发布的招聘信息来看,AI类岗位占比显著提升,成为本次校招的核心亮点。 那么,哪类AI人才受…

springboot社区医院管理系统(11648)

有需要的同学,源代码和配套文档领取,加文章最下方的名片哦 一、项目演示 项目演示视频 二、资料介绍 完整源代码(前后端源代码SQL脚本)配套文档(LWPPT开题报告)远程调试控屏包运行 三、技术介绍 Java…

爆肝拆解TradingAgents项目!LLM在AI投研中到底扮演什么角色?小白程序员也能懂的金融AI实战

对于LLM投研的很多项目,如果只是用不同角色的agents各自在不同角度调研,然后展开辩论或写报告,最后有个拿主意的LLM这样的,实际上感觉至少是要你提前是选好股的,否则就缺少横向对比其他股票的机会,会错判相…

“【震惊】57%企业已投产AI Agent!LangChain最新报告:Coding Agents统治程序员日常,这些坑千万别踩!“

你有没有这种体验:一个 Agent demo 看起来无所不能——会查资料、会写代码、会调用工具、还会自己决定下一步。但一到真要上线,你就突然开始焦虑:它会不会胡说?会不会慢到让人崩溃?会不会一不小心越权操作?…

EasyGBS打造智能视频监控新体系

在当今快速发展的科技时代,视频监控技术作为安全防范的重要手段,已经广泛应用于各行各业。从公共场所的安全监控到企业内部的生产监管,再到智能家居的日常防护,视频监控无处不在地守护着我们的安全。然而,随着监控规模…

Linux---Tomcat服务器Varnish代理服务器

Linux 上配置 Varnish 作为 Tomcat 服务器的反向代理 Varnish 是一款高性能的 HTTP 加速器和反向代理缓存服务器,常用于前端缓存动态内容(如 Java Web 应用),减少 Tomcat 的负载。Tomcat 是 Java 应用的容器,通常运行…

爆肝程序员必看!RAG 2.0实战全攻略:从零构建企业级AI原生投诉系统,小白也能秒变AI架构师!

面向开发者的共识正在形成:在企业场景里,RAG 的上限从来不由“能不能生成”决定,而由“能不能拿到足够、正确、可引用的证据”决定。2025 年以来,业界把这套工程化升级称为 RAG 2.0:混合检索、重排序、多模态、图结构、…

_基于springboot的二手车交易系统(11649)

有需要的同学,源代码和配套文档领取,加文章最下方的名片哦 一、项目演示 项目演示视频 二、资料介绍 完整源代码(前后端源代码SQL脚本)配套文档(LWPPT开题报告)远程调试控屏包运行 三、技术介绍 Java…

Java常用的日期和时间格式化转换符

Java 中常用的日期和时间格式化转换符大全 Java 中日期和时间的格式化主要通过以下两个类实现: 旧 API(Java 8 之前):java.text.SimpleDateFormat新 API(Java 8 推荐):java.time.format.DateT…

EasyGBS重塑商业场所视频监控管理新模式

在商业综合体、连锁商超、特色商业街等现代商业场所中,视频监控系统早已不是简单的“安全守卫”,更成为支撑精细化运营、提升服务品质的核心基础设施。然而,传统视频监控普遍存在设备异构、协议混乱、智能不足、数据沉睡等痛点,难…

AI圈炸锅!DeepSeek-OCR黑科技:压缩10倍长文本,成本直降90%!VTC技术让大模型“过目不忘“,中科院发布权威评测

【导读】DeepSeek-OCR的视觉文本压缩(VTC)技术通过将文本编码为视觉Token,实现高达10倍的压缩率,大幅降低大模型处理长文本的成本。但是,视觉语言模型能否理解压缩后的高密度信息?中科院自动化所等推出VTCB…

ue用tick通信执行方法 mcp铺垫

tick是什么我不知道,反正是跑通了 你这段代码中使用的 “Tick”,并不是 Unreal Engine 中常见的 Actor 或 Component 的 Tick() 函数,而是通过 unreal.register_slate_post_tick_callback() 注册的一个 Slate UI 系统级别的每帧回调函数。 &…

电加热烘箱功能升级,2025年有实力的优质源头生产厂家推荐 - 品牌推荐大师

中国电加热烘箱行业市场规模持续扩大。2024年,行业整体市场规模达到580亿元,较2023年增长约11.5%。预计2025年市场规模将突破600亿元,同比增长约3.4%。高温电加热烘箱2024年市场规模为6.2亿元,同比增长14.8%,预计…