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

dd 命令:复制和转换文件

一、dd 命令简介

dd​ 命令是一个在 Unix 和类 Unix 系统中用于复制文件和转换文件的命令行工具。它的功能非常强大,可以用于各种目的,例如创建镜像文件、备份和恢复数据、复制数据等。

dd​ 是一个用于读取、转换和写入数据的工具,通常用于块设备级别的操作,比如复制整个磁盘或分区,或者处理单个文件。它不识别文件系统结构,因此不能用来复制目录树或文件夹。

二、dd 命令参数

dd if=<输入文件> of=<输出文件> [bs=<块大小>] [count=<块数量>] [conv=<转换选项>] [status=<进度显示>]

常用选项

  • if=input_file​:指定输入文件。
  • of=output_file​:指定输出文件。
  • bs=block_size​:指定块大小。默认512kB。
  • count=blocks​:指定要复制的块数。
  • status=progress​:显示复制进度。
  • seek=blocks​:在输出文件中跳过指定块数。
  • skip=blocks​:在输入文件中跳过指定块数。

三、dd 命令示例

示例1:dd命令复制文件

dd if=输入文件 of=输出文件

例如

soulio@ubuntu:~/命令大全/dd$ dd if=test_file of=new_file
819200+0 records in
819200+0 records out
419430400 bytes (419 MB, 400 MiB) copied, 2.55206 s, 164 MB/s

示例2:dd命令测试硬盘读写速度

dd if=输入文件 of=输出文件 [块大小] [块数量]

例如,

测试硬盘写入速度

soulio@ubuntu:~/命令大全/dd$ dd if=/dev/zero of=test_file bs=4M count=100
100+0 records in
100+0 records out
419430400 bytes (419 MB, 400 MiB) copied, 0.313331 s, 1.3 GB/s

测试硬盘读取速度

soulio@ubuntu:~/命令大全/dd$ dd if=test_file of=/dev/null
819200+0 records in
819200+0 records out
419430400 bytes (419 MB, 400 MiB) copied, 1.53856 s, 273 MB/s

示例3:dd命令显示进度

dd if=input_file of=output_file status=progress

例如

dd if=/dev/zero of=大测试文件 bs=4M count=1000 status=progress

recording

示例4:dd命令写入系统镜像

把一个系统镜像写入U盘(也可以是移动硬盘)

sudo dd if=镜像目录 of=U盘目录

例如:ubuntu22.04镜像写入一个U盘(移动硬盘)

$ dd if=debian-12.6.0-amd64-netinst.iso of=/dev/sdc status=progress 
659137024 bytes (659 MB, 629 MiB) copied, 292 s, 2.3 MB/s
1292288+0 records in
1292288+0 records out
661651456 bytes (662 MB, 631 MiB) copied, 303.586 s, 2.2 MB/s

现在可以用这个U盘给电脑安装系统。

示例5:dd命令其他用法

  • 备份磁盘或分区
    复制

    dd if=/dev/sda1 of=/path/to/backup.img bs=4M
    

    这会备份 /dev/sda1​ 分区到 /path/to/backup.img​ 文件,使用4MB的块大小。

  • 格式化USB驱动器
    复制

    dd if=/dev/zero of=/dev/sdb bs=512 count=1
    

    注意:这将擦除USB驱动器上的所有数据,请谨慎操作。

  • 从备份文件恢复磁盘或分区
    复制

    dd if=/path/to/backup.img of=/dev/sda1 bs=4M
    

    将备份的映像恢复到 /dev/sda1​ 分区。

  • 复制光盘到ISO文件
    复制

    dd if=/dev/cdrom of=/path/to/cdrom.iso bs=4M
    

注意事项

  • 使用 dd​ 命令时要格外小心,因为它具有强大的功能,但也很容易导致数据丢失或文件覆盖。
  • 确保在执行命令之前仔细检查命令参数,避免意外的数据损坏。
  • dd​ 命令默认情况下不会显示进度,如果要监控进度,可以使用 status=progress​ 选项。

http://www.lryc.cn/news/438316.html

相关文章:

  • 文件系统(磁盘 磁盘文件 inode)
  • ThreeJs创建圆环
  • React实现类似Vue的路由监听Hook
  • Visual Studio打开项目的一些小技巧
  • 前端页面中使用 ppt 功能,并且可以随意插入关键帧
  • 机器学习:opencv--图像金字塔
  • linux安全软件Hydra使用教程
  • 【ShuQiHere】从晶体管到逻辑门:数字电路的构建之旅
  • PDF扫描版文字识别OCR
  • Synchronized由什么样的缺陷? Java Lock是怎么弥补这些缺陷的?
  • 联合仿真(FMI,FMU)资料收集
  • Android Radio2.0——动态列表回调(七)
  • 在conda虚拟环境中安装cv2(试错多次总结)
  • 【EI稳定,马来亚大学主办】2024年计算机与信息安全国际会议(WCCIS 2024,9月27-29)
  • 免费AI播客生成:notebooklm可以生成播客的两个发言人谈论的内容,从各种来源如研究论文、文章
  • “MIME 媒体类型“用来标识网络传输内容的格式标准
  • MySql的基础讲解
  • 类型转换等 面试真题
  • MySQL下载安装
  • golang实现正向代理http_proxy和https_proxy
  • 数字IC设计\FPGA 职位经典笔试面试--整理
  • Golang协程泄漏定位和排查
  • 【我的 PWN 学习手札】Unlink Attack
  • 算法笔试-编程练习-好题-04
  • 使用Rustup快速无缝升级Rust
  • pytorch qwen2-vl自定义数据全量微调
  • 切换淘宝最新npm镜像源是
  • 全国历年高考真题2008-2024
  • 【vue-media-upload】一个好用的上传图片的组件,注意事项
  • linux第一课(操作系统核心)