linux下制作img文件

一、简介

制作img文件可以使用linux系统中的dd命令制作,Linux dd 命令用于读取、转换并输出数据。dd 可从标准输入或文件中读取数据,根据指定的格式来转换数据,再输出到文件、设备或标准输出。命令的详细使用教程见Linux dd 命令

二、方式一

  1. 创建.img文件
dd if=/dev/zero of=./rootfs20.04.2.img bs=1M count=1024

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

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

  1. 卸载镜像
sudo umount /mnt
  1. 修复并调整文件大小
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

posted @ 2021-09-14 00:15  浇筑菜鸟  阅读(8440)  评论(0编辑  收藏  举报