在Ubuntu上使用 dd 工具制作U盘启动盘

news2025/6/9 1:48:37

在Ubuntu上使用 dd 工具制作U盘启动盘

在Linux系统中,dd 是一个功能强大且原生支持的命令行工具,常用于复制文件和转换数据。它也可以用来将ISO镜像写入U盘,从而创建一个可启动的操作系统安装盘。虽然图形化工具(如 Startup Disk Creator 或 Etcher)更加直观,但使用 dd 命令制作启动盘具有更高的灵活性和可靠性,特别适合熟悉终端操作的用户。

本文将详细介绍如何在 Ubuntu 系统下使用 dd 命令制作 U 盘启动盘,包括完整步骤、注意事项以及常见问题的解决方案。


📌 适用场景

  • 想要手动控制启动盘制作过程
  • 图形化工具无法正常工作时
  • 需要高度可靠的写入方式(如制作恢复盘)
  • 使用较新的硬件或特殊格式需求(例如配合 uefi-ntfs.img

🛠️ 准备工作

1. 下载 ISO 文件

确保你已经从官方或可信源下载了目标系统的 ISO 文件(如 Ubuntu、Debian、Windows 安装镜像等)。

2. 插入 U 盘

将准备好的 U 盘插入电脑 USB 接口。请确认 U 盘容量大于 ISO 文件大小。


🧭 操作步骤

步骤一:查找 U 盘设备名

打开终端(Ctrl + Alt + T),运行以下命令查看所有磁盘设备:

lsblk

或者:

sudo fdisk -l

你会看到类似如下输出:

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 465.8G  0 disk 
├─sda1   8:1    0   512M  0 part /boot/efi
├─sda2   8:2    0 464.3G  0 part /
sdb      8:16   1  14.9G  0 disk 
└─sdb1   8:17   1  14.9G  0 part /media/user/USB

在这里,/dev/sdb 就是你的 U 盘设备(注意不要选错!)

⚠️ 特别注意:设备名通常是 /dev/sdX 格式(如 /dev/sdb, /dev/sdc),而不是 /dev/sdX1 这样的分区路径。


步骤二:卸载 U 盘

如果 U 盘已经被挂载,请先卸载:

sudo umount /dev/sdX*

替换 sdX 为你的实际设备名,如 sdb


步骤三:使用 dd 写入 ISO 到 U 盘

执行以下命令将 ISO 文件写入 U 盘:

sudo dd if=/path/to/image.iso of=/dev/sdX bs=4M status=progress

参数说明:

  • if:输入文件(input file),即 ISO 文件路径。
  • of:输出文件(output file),即 U 盘设备路径。
  • bs=4M:每次读写块大小设为 4MB,提升写入速度。
  • status=progress:显示写入进度信息(适用于较新版本的 dd)。

示例:

sudo dd if=~/Downloads/ubuntu-24.04-desktop-amd64.iso of=/dev/sdb bs=4M status=progress

这个过程可能需要几分钟时间,完成后你会返回终端提示符。


步骤四:同步数据并安全弹出 U 盘

为了确保所有数据正确写入,建议运行:

sync

然后你可以安全拔出 U 盘。


✅ 成功验证

将 U 盘插入另一台电脑,并进入 BIOS 设置选择从 USB 启动。如果一切顺利,你应该能够看到目标系统的启动界面(如 Ubuntu 的安装菜单)。


⚠️ 注意事项

  • 一定要确认设备名正确,否则可能误写系统盘导致数据丢失。
  • dd 会完全覆盖整个 U 盘内容,请提前备份。
  • 不建议对 NTFS 分区直接使用 dd 来制作 Windows 启动盘,因为某些情况下需要额外引导镜像(如 uefi-ntfs.img)来实现 UEFI 引导。
  • 如果遇到“权限被拒绝”错误,请确认使用了 sudo 执行命令。

🧩 补充:UEFI + NTFS 启动盘的处理

如果你的目标是制作一个能从 UEFI 启动的 Windows 安装盘,并且希望保留大文件支持(NTFS),可以考虑使用 uefi-ntfs.img 镜像结合 dd 命令,具体方法如下:

  1. 下载 uefi-ntfs.img 镜像。
  2. 使用 dd 将其写入 U 盘的一个 FAT32 分区。
  3. 将 ISO 中的内容解压到 U 盘的 NTFS 分区。
  4. UEFI 固件会加载 uefi-ntfs.img,然后访问 NTFS 分区中的安装文件。

这种方式解决了传统 FAT32 分区不能支持大于 4GB 文件的问题,非常适合制作大体积 Windows 安装盘。


🧰 常用命令速查表

功能命令
查看设备列表lsblksudo fdisk -l
卸载 U 盘sudo umount /dev/sdX*
写入 ISO 到 U 盘sudo dd if=image.iso of=/dev/sdX bs=4M status=progress
数据同步sync

📝 END

虽然 dd 命令没有图形界面工具那么直观,但它是一个强大而稳定的工具,尤其适合高级用户和脚本自动化。只要注意设备名称的准确性,就可以非常可靠地完成 U 盘启动盘的制作任务。

无论你是想安装 Ubuntu、修复系统,还是构建自定义 Linux 发行版,掌握 dd 命令都是一个非常实用的技能。


📌 小贴士:

如果你不习惯使用命令行,也可以尝试图形化工具如 Startup Disk Creator 或 Etcher,它们也能很好地完成这项工作。


拜拜~

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

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

相关文章

Spark 之 DataFrame 开发

foreachPartition val data = spark.sparkContext.parallelize(1 to 100)// 使用 foreachPartition 批量处理分区 data.foreachPartition {partitionIterator =

嵌入式学习笔记 - freeRTOS xTaskResumeAll( )函数解析

第一部分 移除挂起等待列表中的任务 while( listLIST_IS_EMPTY( &xPendingReadyList ) pdFALSE )//循环寻找直到为空,把全部任务扫描一遍 { pxTCB ( TCB_t * ) listGET_OWNER_OF_HEAD_ENTRY( ( &xPendingR…

机器学习KNN算法全解析:从原理到实战

大家好!今天我们来聊聊机器学习中的"懒人算法"——KNN(K-Nearest Neighbors,K近邻)算法。这个算法就像个"墙头草",它不学习模型参数,而是直接根据邻居的"投票"来做决策&…

【QT】自定义QWidget标题栏,可拖拽(拖拽时窗体变为normal大小),可最小/大化、关闭(图文详情)

目录 0.背景 1.详细实现 思路简介 .h文件 .cpp文件 0.背景 Qt Linux;项目遇到问题,解决后特此记录 项目需要,个性化的标题栏(是个widget),在传统的三个按钮(最大化、最小化、关闭&#xf…

FPGA定点和浮点数学运算-实例对比

在创建 RTL 示例时,经常使用 VHDL 2008 附带的 VHDL 包。它提供了出色的功能,可以高效地处理定点数,当然,它们也是可综合的。该包的一些优点包括: 有符号和无符号(后缀和后缀)定点向量。轻松将定…

Linux编程:2、进程基础知识

一、进程基本概念 1、进程与程序的区别 程序:静态的可执行文件(如电脑中的vs2022安装程序)。进程:程序的动态执行过程(如启动后的vs2022实例),是操作系统分配资源的单位(如 CPU 时…

Cursor Rules 使用

前言 最近在使用 Cursor 进行编程辅助时,发现 AI 生成的代码风格和当前的代码风格大相径庭。而且有时它会输出很奇怪的代码,总是不符合预期。 遂引出本篇,介绍一下 Rules ,它就可以做一些规范约束之类的事情。 什么是 Cursor R…

服务器数据恢复—服务器raid5阵列崩溃如何恢复数据?

服务器数据恢复环境&故障: 某品牌型号为X3850服务器上有一组由14块数据盘和1块热备盘组建的raid5磁盘阵列。 服务器在正常使用过程中突然崩溃,管理员查看raid5阵列故障情况的时发现磁盘阵列中有2块硬盘掉线,但是热备盘没有启用。 服务器数…

Go语言堆内存管理

Go堆内存管理 1. Go内存模型层级结构 Golang内存管理模型与TCMalloc的设计极其相似。基本轮廓和概念也几乎相同,只是一些规则和流程存在差异。 2. Go内存管理的基本概念 Go内存管理的许多概念在TCMalloc中已经有了,含义是相同的,只是名字有…

【DAY41】简单CNN

内容来自浙大疏锦行python打卡训练营 浙大疏锦行 知识点: 数据增强卷积神经网络定义的写法batch归一化:调整一个批次的分布,常用与图像数据特征图:只有卷积操作输出的才叫特征图调度器:直接修改基础学习率 卷积操作常…

使用MinIO搭建自己的分布式文件存储

目录 引言: 一.什么是 MinIO ? 二.MinIO 的安装与部署: 三.Spring Cloud 集成 MinIO: 1.前提准备: (1)安装依赖: (2)配置MinIO连接: &…

K7 系列各种PCIE IP核的对比

上面三个IP 有什么区别,什么时候用呢? 7 series Integrated Block for PCIE AXI Memory Mapped to PCI Express DMA subsystem for PCI Express 特点 这是 Kintex-7 内置的 硬核 PCIe 模块。部分事务层也集成在里面,使用标准的PCIE 基本没…

natapp 内网穿透失败

连不上网络错误调试排查详解 - NATAPP-内网穿透 基于ngrok的国内高速内网映射工具 如何将DNS服务器修改为114.114.114.114_百度知道 连不上/错误信息等问题解决汇总 - NATAPP-内网穿透 基于ngrok的国内高速内网映射工具 nslookup auth.natapp.cnping auth.natapp.cn

深入解析CI/CD开发流程

引言:主播最近实习的时候发现部门里面使用的是CI/CD这样的集成开发部署,但是自己不是太了解什么意思,所以就自己查了一下ci/cd相关的资料,整理分享了一下 一、CI/CD CI/CD是持续集成和持续交付部署的缩写,旨在简化并…

Docke启动Ktransformers部署Qwen3MOE模型实战与性能测试

docker运行Ktransformers部署Qwen3MOE模型实战及 性能测试 最开始拉取ktransformers:v0.3.1-AVX512版本,发现无论如何都启动不了大模型,后来发现是cpu不支持avx512指令集。 由于本地cpu不支持amx指令集,因此下载avx2版本镜像: …

应用分享 | 精准生成和时序控制!AWG在确定性三量子比特纠缠光子源中的应用

在量子技术飞速发展的今天,实现高效稳定的量子态操控是推动量子计算、量子通信等领域迈向实用化的关键。任意波形发生器(AWG)作为精准信号控制的核心设备,在量子实验中发挥着不可或缺的作用。丹麦哥本哈根大学的研究团队基于单个量…

相机--相机标定实操

教程 camera_calibration移动画面示例 usb_cam使用介绍和下载 标定流程 单目相机标定 我使用的是USB相机,所以直接使用ros的usb_cam功能包驱动相机闭关获取实时图像,然后用ros的camera_calibration标定相机。 1,下载usb_cam和camera_calibration: …

DAY43 复习日

浙大疏锦行-CSDN博客 kaggle找到一个图像数据集,用cnn网络进行训练并且用grad-cam做可视化 进阶:把项目拆分成多个文件 src/config.py: 用于存放项目配置,例如文件路径、学习率、批次大小等。 # src/config.py# Paths DATA_DIR "data…

【Auto.js例程】华为备忘录导出到其他手机

目录 问题描述方法步骤1.安装下载Visual Studio Code2.安装扩展3.找到Auto.js插件,并安装插件4.启动服务器5.连接手机6.撰写脚本并运行7.本文实现功能的代码8.启动手机上的换机软件 问题描述 问题背景:华为手机换成一加手机,华为备忘录无法批…

单片机的低功耗模式

什么是低功耗? STM32的低功耗(low power mode)特性是其嵌入式处理器系列的一个重要优势,特别适用于需要长时间运行且功耗敏感的应用场景,如便携式设备、物联网设备、智能家居系统等。 在很多应用场合中都对电子设备的…