当前位置: 首页 > java >正文

资源管理-dd命令

文章目录

    • 一、为什么运维要用 `dd`?—— 核心价值
    • 二、高频运维场景实战
      • 场景 1:磁盘/分区全量备份与恢复(灾备必备)
      • 场景 2:制作启动盘/U盘(安装系统必备)
      • 场景 3:创建空文件/稀疏文件(测试存储或初始化资源)
      • 场景 4:磁盘性能测试(评估存储 I/O 能力)
      • 场景 5:清理磁盘坏块或释放“空洞”(数据修复)
    • 三、风险规避与最佳实践
    • 四、总结:运维必会的 `dd` 命令速查表

在 Linux 运维工作中, dd 命令是一个功能强大但需要谨慎使用的底层工具,主要用于 磁盘/分区备份、数据恢复、性能测试、镜像制作 等关键场景。以下是结合实际运维工作的详细使用指南,涵盖 高频场景、操作技巧、风险规避 三大方向。


一、为什么运维要用 dd?—— 核心价值

dd 的本质是 按块(block)直接读写设备或文件,不经过文件系统层解析,因此能处理:

  • 原始设备(如 /dev/sda 整个磁盘,含分区表、MBR)
  • 特殊设备(如 /dev/zero 生成空字节、/dev/random 生成随机数)
  • 底层数据流(如备份、克隆、测试)

相比图形化工具(如 Clonezilla),dd 更轻量、更灵活,适合自动化脚本和紧急救援场景。


二、高频运维场景实战

场景 1:磁盘/分区全量备份与恢复(灾备必备)

需求背景

  • 物理服务器磁盘故障前需备份整个系统盘(如 /dev/sda)。
  • 迁移物理机到虚拟机(P2V)时,直接克隆原始磁盘数据。

操作示例
① 备份整块磁盘到镜像文件(含分区表、引导扇区)

# 将 /dev/sda(系统盘)备份为 /backup/sda_full.img(建议存放到外部存储或 NFS)
sudo dd if=/dev/sda of=/backup/sda_full.img bs=4M status=progress
  • 关键参数
    • bs=4M:每次读写 4MB 块(平衡速度与内存占用,默认 512B 太小,效率低)。
    • status=progress:实时显示传输速率和进度(GNU dd 特有,旧版本需用 pv 替代)。

② 从镜像恢复磁盘(例如磁盘损坏后还原)

# 将备份的 sda_full.img 恢复到 /dev/sdb(目标磁盘容量需 ≥ 源磁盘)
sudo dd if=/backup/sda_full.img of=/dev/sdb bs=4M status=progress
  • 注意:恢复后会完全覆盖目标磁盘的所有数据(包括分区表),操作前需确认目标设备(如 /dev/sdb)是否正确!

③ 优化:压缩备份节省空间

# 备份时直接压缩(牺牲速度换存储空间)
sudo dd if
http://www.xdnf.cn/news/20151.html

相关文章:

  • 《嵌入式硬件(三):串口通信》
  • Jenkins 监控方案:Prometheus + Grafana 实践
  • Java 学习笔记(进阶篇2)
  • 《Cocos Creator的2D、3D渲染使用记录》
  • 使用自定义固定公网URL地址远程访问公司内网OA办公系统,本地无需公网IP和专线让外网访问
  • 【Python基础】 19 Rust 与 Python if 语句对比笔记
  • Unity学习----【进阶】Addressables(二)--加载资源与打包及更新
  • Github | MoneyPrinterTurbo:自动化视频内容生成系统
  • 医疗AI中GPU集群设计与交付实践
  • Windows蓝屏解决方案(扩展)
  • C++进阶——继承 (1)
  • Dify on DMS,快速构建开箱即用的客服对话数据质检服务
  • Cursor Pair Programming:在前端项目里用 AI 快速迭代 UI 组件
  • STM32使用HAL库驱动铁电存储FM25CL64
  • 用 Shields.io 定制 README 个性徽章
  • 嵌入式铁头山羊stm32-SAR型ADC模块介绍、采样时间、转换时间-Day24
  • Web与Nginx
  • MCP 和 Fuction Call 有什么不同
  • Python基础(①④内存管理机制)
  • 【Element Plus 表单组件样式统一 CSS 文字特效实现指南】
  • 啥是两化融合?
  • 算法模板(Java版)_哈希表
  • 手写Java泛型,彻底掌握它!
  • 结合prompt分析NodeRAG的build过程
  • MySQL事务的四大特性(ACID)
  • 代码随想录二刷之“贪心算法”~GO
  • HTML 基本结构
  • 一篇文章带你彻底搞懂 JVM 垃圾收集器
  • 大数据开发计划表(实际版)
  • Python入门教程之数学运算符