img镜像文件制作方法

img镜像文件制作方法

方法一

dd if=/dev/zero of=linux-rootfs.img bs=1M count=1024
/dev/zero:为虚拟盘的名字。
linux-rootfs.img为你的穿建的镜像文件。
bs=1M
count=1024为此镜像的大小。一般1G的根文件系统很大了,如果担心不够用,也可以直接2048.
===============================================================================

dd if=/dev/zero of=linux-rootfs.img bs=1M count=5120

格式化镜像
sudo mkfs.ext4 linux-rootfs.img

挂载镜像并往里面拷入修改后的文件系统:
sudo mount linux-rootfs.img rootfs
sudo cp -rfp ipu_rootfs_ubuntu16/* rootfs/

卸载镜像
sudo umount rootfs

改成实际大小
sudo e2fsck -p -f linux-rootfs.img
sudo resize2fs  -M linux-rootfs.img
dd if=/dev/zero of=linux-rootfs.img bs=1M count=5120
sudo mkfs.ext4 linux-rootfs.img

sudo mount linux-rootfs.img rootfs
sudo cp -rfp ipu_rootfs_ubuntu16/* rootfs/
sudo umount rootfs
sudo e2fsck -p -f linux-rootfs.img
sudo resize2fs  -M linux-rootfs.img

方法二

#!/bin/bash 
rootfs_dir=$1 
rootfs_file=$2 
rootfs_mnt="mnt" 
if [ ! $rootfs_dir ] || [ ! $rootfs_file ]; 
then 
    echo "Folder or target is empty." 
    exit 0 
fi 
if [ -f "$rootfs_file" ]; then 
    echo "-- Delete exist $rootfs_file ..." 
    rm -f "$rootfs_file" 
fi 
echo "-- Create $rootfs_file ..." 
dd if=/dev/zero of="$rootfs_file" bs=1M count=6144 
sudo mkfs.ext4 -F -L linuxroot "$rootfs_file" 
if [ ! -d "$rootfs_mnt" ]; then 
    mkdir $rootfs_mnt 
fi 
echo "-- Copy data to $rootfs_file ..." 
sudo mount $rootfs_file $rootfs_mnt 
sudo cp -rfp $rootfs_dir/* $rootfs_mnt 
sudo sync 
sudo umount $rootfs_mnt 
rm -r $rootfs_mnt
echo "-- Resize $rootfs_file ..." 
/sbin/e2fsck -p -f "$rootfs_file" 
/sbin/resize2fs -M "$rootfs_file" 
echo "-- Done."

运行
给mkimage.sh 脚本可执行权限
chmod 777 mkimage.sh
接着执行如下指令将 ubuntu-rootfs 打包
./mkimage.sh ubuntu-rootfs rootfs.img

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值