【恢复镜像】Ubuntu 刷写 .img 镜像磁盘简明教程

Ubuntu 刷写 .img 镜像磁盘简明教程

ctrl+alt+T:打開終端

1. 用到的命令


插盘,用lsblk看磁盘号(sdb、sdc 这类)

dd作用:把.img镜像文件完整写入磁盘(刷系统盘用)

2. 命令格式

sudo dd if=镜像文件路径 of=/dev/磁盘号 bs=4M status=progress conv=fsync

3. 实例

sudo dd if=/home/user/batocera.img of=/dev/sdb bs=4M status=progress conv=fsync

sudo dd if='/media/ubunto/数据/v41jingxiang111111/V41_legacy_uefi_0418.img' of=/dev/sdd bs=4M status=progress conv=fsync

=====================================================================================

下面的多了豆號,因爲是在其他硬盤。F盤
sudo dd if='/media/ubunto/数据/v41jingxiang111111/V41_legacy_uefi_0418.img' of=/dev/sdd bs=4M status=progress conv=fsync
sudo dd if=/media/ubunto/数据/v41jingxiang111111/V41_legacy_uefi_0418.img of=/dev/sdc bs=4M status=progress conv=fsync

如果不想寫

ctrl+c:中斷當前命令

---------------------------------------------------------------------------

刷 41 版本
sudo dd if=/home/ubunto/下载/Desktop/batocera_1/batocera-x86_64-41-20250106.img of=/dev/sdd bs=4M status=progress conv=fsync
[sudo dd if=/home/ubunto/下载/Desktop/batocera_1/batocera-x86_64-41-20250106.img of=/dev/sdd bs=4M status=progress conv=fsync]
刷 42 版本
sudo dd if=/home/ubunto/下载/Desktop/batocera_1/batocera-x86_64-42-20251006.img of=/dev/sdd bs=4M status=progress conv=fsync
[sudo dd if=/home/ubunto/下载/Desktop/batocera_1/batocera-x86_64-42-20251006.img of=/dev/sdd bs=4M status=progress conv=fsync]
刷完后强制同步数据(防止数据没写完)
[sync]

4. 实例说明

  • if=/home/user/batocera.img:这是镜像文件路径,可以直接拖文件进终端自动生成
  • of=/dev/sdb:这是目标磁盘,sdb 是你要刷的盘

5. 实用技巧

  • 输入sudo dd if=后,直接把.img文件拖进终端,会自动补全完整路径,不用手动输入
  • 路径不对可以直接删掉重拖,或者手动修改

6. 注意事项

  1. 先插盘,用lsblk看磁盘号(sdb、sdc 这类)
  2. 磁盘号不要带数字,比如 sdb ✔️,sdb1 ❌
  3. 输密码时不显示,直接输完回车
  4. 执行前再三确认磁盘号,一旦刷错,会清空整个物理磁盘的所有数据,不是只清一个分区,是整块盘全部清空
  5. 出现记录写入完成就可以安全弹出磁盘
刷完后强制同步数据(防止数据没写完)

[sync]



============================================================================




======================================================================================

额外补充命令(直接加在教程最后就行)


1. 刷完后安全弹出磁盘

bash
运行
sudo eject /dev/sdX
作用:结束写入,安全弹出 U 盘 / 硬盘,避免拔盘损坏数据

2. 校验镜像文件完整性(可选)

bash
运行
sha256sum 镜像文件路径.img
作用:核对 SHA256 校验码,确认镜像没损坏、没下载错

3. 终端强制退出命令

bash
运行
Ctrl + C
作用:命令跑错、卡死时,立刻终止当前操作



=================================================================================================================分割線 下面的爲純純說明講解,可以忽略不看=================================================


Ubuntu 刷写 .img 镜像磁盘简明教程

打开终端:Ctrl + Alt + T

1. 用到的命令

dd作用:把 .img 镜像完整写入磁盘(刷系统盘)

2. 命令格式

bash
运行
sudo dd if=镜像文件路径 of=/dev/磁盘号 bs=4M status=progress conv=fsync

3. 实例

bash
运行
sudo dd if=/home/user/batocera.img of=/dev/sdb bs=4M status=progress conv=fsync

4. 实例说明

  • if=...:镜像文件路径(可直接拖文件进终端自动生成)
  • of=/dev/sdb:目标磁盘(sdb 是你要刷的盘)

5. 实用技巧

输入sudo dd if=后,直接把 .img 文件拖进终端,自动补全路径。

6. 注意事项

  1. 先插盘,用lsblk查看磁盘号(sdb、sdc…)
  2. 磁盘号不要带数字:sdb ✔️,sdb1 ❌
  3. 输密码不显示,输完直接回车
  4. 刷错会清空整块物理磁盘,不是只清一个分区
  5. 显示写入完成后,再执行收尾命令

刷完必做:安全收尾命令

1. 强制数据同步(必须)

bash
运行
sync 
作用:把内存缓存里的数据真正写到磁盘,防止镜像损坏。

2. 安全弹出磁盘

bash
运行
sudo eject /dev/sdX

3. 终端强制退出(卡死用)

Ctrl + C

4. 校验镜像完整性(可选)

bash
运行
sha256sum 镜像文件.img

最简安全流程(记这个就够)

  1. lsblk看盘
  2. 拖文件生成 dd 命令 → 运行
  3. 结束 → 输入sync
  4. 同步完成 →eject弹出 → 拔盘


======================================================================================

sync 命令(程序员逻辑讲解)

bash
运行
sync 

作用(直白底层逻辑)

Linux 为了速度快,不会立刻把数据真写到磁盘,而是先暂存在内存里(叫「缓存 / Buffer」),等空闲了再慢慢往硬盘写。
  • dd显示「完成」,只是内存里标记写完
  • 但数据可能还在内存没落地到磁盘盘片上
  • 这时候直接拔盘,就会镜像损坏、刷一半、无法启动

sync 到底干了啥

  1. 强制把所有内存里还没落地的缓存数据
  2. 一次性、阻塞式真・写入磁盘
  3. 直到完全写完,命令才结束
  4. 这之后再拔盘,才是安全的

使用方法(直接加在你教程最后)

刷写完成后执行:

bash
运行
sync 

运行表现

  • 会卡一会儿(尤其是大镜像)
  • 不显示进度
  • 回到命令提示符 = 同步完成

完整安全收尾流程

bash
运行
sudo dd if=xxx.img of=/dev/sdX ... sync sudo eject /dev/sdX
这样才是工业级安全刷盘,不会出现「刷完不认盘、镜像损坏」。
那它刷完之后没有卡,什么都没有,然后它它那个到那个井号键了,还是或者说,反正是说它跳行了,能输入命令,要直接输入那个这个它显示写了多少多少,然后直接输入那个 sync 行不行?其他啥都不说。
完全可以,而且就是要这么用。
我用最底层、程序员的逻辑跟你说清楚:
  1. 当dd执行完,显示写了多少字节、多少记录,然后回到提示符(#或$),
    只代表:系统已经把任务交给磁盘驱动了
  2. 但 Linux 为了速度,会把一部分数据留在内存缓存里,还没真正写到盘片。
  3. 这时候你直接输入sync回车,啥都不用管,就够了。

sync 命令真正做的事(底层逻辑)

  • 你输入sync→ 内核收到指令
  • 它会阻塞等待,把所有还在内存里的 “脏缓存”
  • 全部强制刷写到物理磁盘
  • 等它自己安静地回到命令提示符,就代表:
    所有数据真的落盘了,没有任何残留缓存。

你正确的操作流程(最简、最安全)

  1. 运行 dd 刷盘
  2. 等它结束,显示写入完成,回到可输入状态
  3. 直接输入:
    bash
    运行
    sync 
  4. 等它回到提示符,再拔盘或 eject

一句话总结

dd 结束 ≠ 数据完全写完sync 结束 = 数据100% 写到磁盘
你现在的理解完全正确:dd 跑完 → 直接输 sync → 等它回来 → 安全。


=================================================================================================================分割線 下面的爲純純說明講解,可以忽略不看=================================================


Ubuntu 下刷写 .img 镜像到磁盘的标准 dd 命令,和刷 Batocera 完全一样用法,你只需要改两处就行。

刷写 IMG 镜像命令(Ubuntu 终端)

bash
运行
sudo dd if=/home/你的用户名/文件名.img of=/dev/sdX bs=4M status=progress conv=fsync

你只需要改这 2 个地方

  1. if=后面:改成你的 img 文件完整路径
    例:
    plaintext
    if=/home/abc/game.img
  2. of=/dev/sdX后面:改成你的 目标磁盘
    • 一般是 U 盘 / 硬盘
    • 千万不能是 sda(大概率是系统盘)
    • 先看磁盘:lsblk

安全步骤(必看,防止刷错盘)

  1. 先插好要刷的盘,打开终端
  2. 查看磁盘编号(找大小对的那个)
    bash
    运行
    lsblk
    比如看到/dev/sdd是你的目标盘,就写of=/dev/sdd
  3. 确认无误再运行上面的 dd 命令
  4. 跑完会显示记录数,完成后安全弹出

精简模板(你直接复制改一改就能用)

bash
运行
sudo dd if=文件路径.img of=/dev/目标磁盘 bs=4M status=progress conv=fsync
需要我顺便给你一条查看磁盘并只显示移动设备的命令吗?这样更不容易选错盘。
好的

一、先查看磁盘(防止刷错盘)

打开终端直接运行:
bash
运行
lsblk
你会看到类似:
  • /dev/sda—— 通常是系统盘
  • /dev/sdb/dev/sdc/dev/sdd—— U 盘 / 游戏盘
大小认准你要刷的盘,记住它的代号:sdX(比如 sdd)

二、刷写 .img 镜像标准命令(直接用)

bash
运行
sudo dd if=/home/你的用户名/文件名.img of=/dev/sdX bs=4M status=progress conv=fsync

你只改这两处:

  1. 文件名.img→ 换成你真实的镜像名字
  2. /dev/sdX→ 换成你刚才查到的目标磁盘(不带数字,比如 sdd,不是 sdd1)

三、完整示例(照着改就行)

bash
运行
sudo dd if=/home/yourname/batocera.img of=/dev/sdd bs=4M status=progress conv=fsync
  • 运行后会显示写入速度、进度
  • 出现records out就是刷完了
  • 完事后可以弹出磁盘:
bash
运行
sudo eject /dev/sdX
需要的话我可以教你怎么快速找到 img 文件的完整路径,直接复制粘贴不用手打。
就是把文件直接拖入终端吗?
对!完全可以直接拖进终端自动填路径,这是最省事、不会打错的方法。

操作步骤(超简单)

  1. 打开 Ubuntu 终端
  2. 先输入前面一半命令:
bash
运行
sudo dd if= 
  1. 把你的 .img 文件直接拖进终端窗口
    它会自动变成完整路径,比如:
    bash
    运行
    sudo dd if=/home/xxx/Downloads/batocera.img
  2. 接着继续输入后面固定部分:
bash
运行
of=/dev/sdX bs=4M status=progress conv=fsync

最终完整样子(你拖完就是这样)

bash
运行
sudo dd if=/home/你/文件路径/xxx.img of=/dev/sdX bs=4M status=progress conv=fsync

重要提醒

  • of=/dev/sdX这里一定不要带数字
    ✅ 正确:/dev/sdd
    ❌ 错误:/dev/sdd1
  • 先运行lsblk看好是哪个盘再回车,不然会把盘数据清空
需要我再给你一条只显示 U 盘 / 移动硬盘的命令吗?防止看错盘。
好的

1. 先查磁盘(只看存储,不看花里胡哨的)

终端输入:
bash
运行
lsblk -d -o NAME,SIZE,TYPE | grep disk
会列出类似:
plaintext
sda    14T  disk
sdb    16G  disk
sdc    32G  disk
找到你要刷的U 盘 / 硬盘,记住名字:比如sdb

2. 最终刷写命令(直接照做)

  1. 输入前半段:
bash
运行
sudo dd if= 
  1. 把 .img 文件拖进终端,自动补全路径
  2. 复制粘贴后半段:
bash
运行
of=/dev/sdX bs=4M status=progress conv=fsync

完整成品示例:

bash
运行
sudo dd if=/home/你/Downloads/batocera.img of=/dev/sdb bs=4M status=progress conv=fsync

3. 必看 2 条

  • sdX 不要加数字:sdb ✔️ / sdb1 ❌
  • 回车后会要密码,输入时不显示星号,输完直接回车就行
跑完出现records out就刷完了,安全弹出即可。
你这写的太复杂了,你给我精简一下吧。比如说用到什么命令,然后呢在后面说明这个命令有什么用,要怎么用。然后呢再然后再然后再把那个整条那个命令的格式给它写出来,然后再列举一个实例,然后就行了。然后呢再说明一下那个实例是什么。哪个是文件哪个是路径。然后呢再说一下文字形式说一下那种注意事项。然后这,要其他的就行了,这样才简单一点的,写太复杂了。

1. 用到的命令

dd作用:把.img镜像文件完整写入磁盘(刷系统盘用)

2. 命令格式

bash
运行
sudo dd if=镜像文件路径 of=/dev/磁盘号 bs=4M status=progress conv=fsync

3. 实例

bash
运行
sudo dd if=/home/user/batocera.img of=/dev/sdb bs=4M status=progress conv=fsync

4. 实例说明

  • if=/home/user/batocera.img:这是镜像文件路径,可以直接拖文件进终端自动生成
  • of=/dev/sdb:这是目标磁盘,sdb 是你要刷的盘

5. 注意事项

  1. 先插盘,用lsblk看磁盘号(sdb、sdc 这类)
  2. 磁盘号不要带数字,比如 sdb ✔️,sdb1 ❌
  3. 输密码时不显示,直接输完回车
  4. 执行前确认磁盘号,刷错会清空数据
  5. 出现记录写入完成就可以安全弹出磁盘
这个题目写什么?这篇文章给我写个题目。

标题

Ubuntu 下刷写 .img 镜像到磁盘简明教程


























刀神道一奶-商品自动发货系统

联系我们 订单查询