游乐游手机版
首页/业界动态/文章详情

dd 命令很强大,而你却不会用:整理了六个生产高频用法

时间:2026-04-17 07:46
1 dd命令是干嘛的 说到系统运维里的“瑞士军刀”,dd命令绝对算一把。它的核心功能其实很纯粹:对块设备进行最底层的、字节级别的读写操作。用一句大白话来概括它的工作逻辑就是:从“if”指定的地方读取数据,然后按照“bs”设定的大小,一股脑儿地写入到“of”指定的地方去。 别看参数列表长得吓人,真正

1. dd命令是干嘛的

说到系统运维里的“瑞士军刀”,dd命令绝对算一把。它的核心功能其实很纯粹:对块设备进行最底层的、字节级别的读写操作。用一句大白话来概括它的工作逻辑就是:从“if”指定的地方读取数据,然后按照“bs”设定的大小,一股脑儿地写入到“of”指定的地方去。

别看参数列表长得吓人,真正高频用到的,也就那么几个。

2. 最常见的事故

很多新手对dd望而生畏,不是没有道理的。一个经典的“翻车”现场就是执行了下面这条命令:

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

猜猜会发生什么?这条命令会用数字0,从头到尾、一个字节不落地覆盖掉整个sdb磁盘。这可不是简单的删除文件,而是物理层面的彻底抹除,数据基本没有恢复的可能。所以,敲下回车前,务必确认“of”指向的不是你的系统盘或者宝贵的数据盘。

3. 生产高频用法

(1) 测试速度

感觉系统写入特别慢?别光猜,用数据说话。执行下面这条命令:

dd if=/dev/zero of=test.img bs=1G count=1 oflag=direct status=progress

它能直接向磁盘写入一个1GB的大文件,并且因为加了oflag=direct参数,会绕过系统缓存,直接进行物理写入。最终显示的速度,就是你这块盘最真实的写入性能。很多存储相关的性能问题,用这个方法十秒钟就能有个初步判断。

(2) 快速创建大文件

这个技巧主要用于测试场景。比如,你想模拟磁盘被写满后系统的表现,或者测试日志文件暴涨是否会拖垮应用,用dd来快速生成一个大文件就非常方便。

dd if=/dev/zero of=/data/bigfile bs=1G count=20

上面这条命令会在/data目录下瞬间“变出”一个20GB的“大胖子”文件。它比fallocate命令更“真实”,因为它是实实在在地写入了数据(尽管都是0)。从下图可以看到,写入的字节数已经把我的/data分区给撑满了。

(3) 整盘克隆(迁移/抢救数据)

这在服务器迁移、旧硬盘更换,甚至磁盘出现坏道需要抢救数据时,是个“笨”但极其有效的方法。

dd if=/dev/sda of=/dev/sdb bs=64K conv=noerror,sync status=progress

这就是所谓的“位对位”复制,源盘(sda)上的所有东西——包括操作系统、分区表、引导信息、用户数据——都会原封不动地克隆到目标盘(sdb)上。不过,这里有个细节需要注意:如果原系统是用UUID来挂载文件系统的,克隆后两块盘的UUID会变得一模一样,这可能会导致挂载冲突,需要后续手动处理。

(4) 判断硬盘是否有物理坏块

系统老是报I/O错误,是文件系统坏了还是硬盘本身不行了?一条命令帮你初步诊断:

dd if=/dev/sdb of=/dev/null bs=1M status=progress

这条命令的目的是读取sdb硬盘上的每一个数据块,然后直接丢弃(写入到/dev/null这个“黑洞”)。如果读取过程中持续出现I/O error,那基本可以断定,这不是软件层面的文件系统问题,而是硬盘出现了物理坏道,该考虑更换了。

(5) 安全擦除磁盘

服务器下线或硬盘报废前,为了确保数据安全不泄露,需要进行安全擦除。

dd if=/dev/urandom of=/dev/sdb bs=1M status=progress

这条命令会用随机数据覆盖整块硬盘,让原始数据无法被恢复。当然,平时可千万别随便对正在使用的盘做这个操作,数据丢了就真找不回来了。

(6) 制作启动盘 / ISO 写盘

给U盘刷写系统镜像,dd是经久不衰的经典方法。

dd if=ubuntu.iso of=/dev/sdb bs=4M status=progress

方法简单粗暴,但胜在稳定可靠,成功率极高,是很多老司机的首选。

4. 平时使用时注意事项

最后,分享几个保命的习惯。每次执行dd命令前,尤其是“of”参数指向磁盘设备时,务必先检查磁盘名称

lsblk

建议至少确认两遍,确保你没有错误覆盖掉重要的磁盘。对于大多数场景,可以记住一个相对安全的固定参数组合:

dd if=XXX of=XXX bs=1M status=progress oflag=direct conv=noerror,sync

这个组合包含了进度显示、直接I/O以及错误处理,能在效率和安全性之间取得一个不错的平衡。记住,dd很强大,但威力与风险并存,谨慎使用才是王道。

来源:https://www.51cto.com/article/836204.html
上一篇数据库分片评估,零代码实践 下一篇Linux 进程与线程深度解析:fork()、exec()、线程原理,一次彻底搞懂
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
长安汽车明年一季度发布首款车载人形机器人小安
业界动态 · 2026-06-29

长安汽车明年一季度发布首款车载人形机器人小安

长安汽车公布机器人战略,采用“1+N+X”布局,联合头部伙伴攻克大脑、能源、驱动技术。人形机器人“小安”身高169cm,体重69kg,移动速度0 8m s,具备40个自由度,续航超2小时。预计明年一季度发布首款车载组件机器人,已在广州车展展示。

中国信科刷新光通信世界纪录 每秒可下载1.4万部4K电影
业界动态 · 2026-06-29

中国信科刷新光通信世界纪录 每秒可下载1.4万部4K电影

3月25日,光通信领域迎来又一个里程碑:中国信科集团光通信技术和网络全国重点实验室联合鹏城实验室、烽火藤仓光纤科技有限公司,成功实现了2 5Pb s 24芯光纤超大容量实时光传输,再次刷新了世界纪录。 这一研究成果不仅入选国际顶级光通信会议OFC(2026)并荣获“高分论文”称号,还受国际权威SCI

美国调查18万辆特斯拉Model3车门应急释放装置易找性
业界动态 · 2026-06-29

美国调查18万辆特斯拉Model3车门应急释放装置易找性

美国国家公路交通安全管理局对约17 9万辆2024款特斯拉Model3启动缺陷调查,焦点在于车门应急释放装置是否不易找到且标识不清。该调查源于一份缺陷请愿,不意味着立即召回,但可能引发后续监管措施。

doc个人图书馆停服 创始人称无偿转让失败
业界动态 · 2026-06-29

doc个人图书馆停服 创始人称无偿转让失败

运营长达20年,累计服务8000万用户的360doc个人图书馆,最终还是迎来了谢幕时刻。2026年5月1日,这个承载着无数用户收藏记忆的知名平台将正式停止服务——关停原因并非用户流失,而是始终未能寻得一位能够安全接管的合适人选。 创始人蔡智在告别信中坦言,近两个月来,他一直在尝试将360doc无偿转

年Q1随身WiFi实测安全靠谱高性价比机型推荐
业界动态 · 2026-06-29

年Q1随身WiFi实测安全靠谱高性价比机型推荐

2025年10月,艾瑞咨询正式授予飞猫“AI WiFi品类开创者”认证,紧接着CIC也将其认定为“多网融合自由切换技术服务首创者”。这些权威认证背后,折射出一个清晰的市场趋势:移动办公、户外出行、宿舍上网等场景的需求正在快速增长,随身WiFi几乎已成为不少用户的刚需装备。但问题也随之而来——网络卡顿