一、简介
制作img文件可以使用linux系统中的dd命令制作,Linux dd 命令用于读取、转换并输出数据。dd 可从标准输入或文件中读取数据,根据指定的格式来转换数据,再输出到文件、设备或标准输出。命令的详细使用教程见Linux dd 命令。
二、方式一
- 创建.img文件
| dd if=/dev/zero of=./rootfs20.04.2.img bs=1M count=1024 |

- 将文件格式化为ext4 格式
| mkfs -t ext4 ./rootfs20.04.2.img |

- 挂载.img文件
| sudo mount -o loop rootfs20.04.2.img /mnt |
- 将需要制作的文件全部拷贝到挂载的目录中
| sudo cp /home/rootfs/* /mnt -avrf |

- 卸载镜像
- 修复并调整文件大小
| e2fsck -p -f rootfs20.04.2.img |
| resize2fs -M rootfs20.04.2.img |

方式二
如果觉得方式一的制作比较麻烦,可以直接使用下面的脚本,便可一行命令搞定
| #!/bin/bash -e |
| |
| TARGET_ROOTFS_DIR=./rootfs |
| ROOTFSIMAGE=${TARGET_ROOTFS_DIR}.img |
| |
| |
| echo Making rootfs! |
| |
| if [ -e ${ROOTFSIMAGE} ]; then |
| sudo rm ${ROOTFSIMAGE} |
| fi |
| |
| EXTRA_SIZE_MB=300 |
| IMAGE_SIZE_MB=$(( $(sudo du -sh -m ${TARGET_ROOTFS_DIR} | cut -f1) + ${EXTRA_SIZE_MB} )) |
| sudo mkfs.ext4 -d ${TARGET_ROOTFS_DIR} ${ROOTFSIMAGE} ${IMAGE_SIZE_MB}M |
| |
| echo Rootfs Image: ${ROOTFSIMAGE} |
| |
参考文献
Linux dd 命令:https://www.runoob.com/linux/linux-comm-dd.html
linux 下制作可启动 img/iso 文件的方法:https://www.jb51.net/LINUXjishu/221537.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】