iso文件系统转换成img格式的步骤整理

本文提供了一种将ISO镜像转换为适用于瑞芯微嵌入式系统的文件系统的方法,并介绍了如何从WIC镜像中提取文件系统进行修改。包括使用qemu-user-static等工具提取文件系统,以及将文件系统烧录到目标设备的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1瑞芯微iso镜像转换

瑞芯微等一些嵌入式芯片无法使用u盘装系统,是使用芯片原厂的工具把文件系统导入到emmc或者ssd中的,我们可以使用下面的方法把iso的文件系统提取出来,然后烧写到开发板中:
在这里插入图片描述
使用版本前安装一下包:

sudo apt install qemu-user-static 
sudo apt install binfmt-support

整理成脚本:

mkdir ubuntu-kylin
mkdir rootfs
sudo mount *.iso ubuntu-kylin 
echo "copy filesystem.squashfs start"
cp ubuntu-kylin/casper/filesystem.squashfs rootfs/
echo "copy filesystem.squashfs ok"
sudo umount ubuntu-kylin
cd rootfs
echo "unsquashfs start"
sudo unsquashfs filesystem.squashfs
echo "unsquashfs ok"
echo "dd start"
dd if=/dev/zero of=rootfs.img bs=1G count=8
echo "dd ok"
sudo mkfs.ext4  rootfs.img
mkdir rootfs
sudo mount rootfs.img rootfs
echo "rsync start"
sudo rsync -a squashfs-root/* rootfs
sudo cp /usr/bin/qemu-aarch64-static rootfs/usr/bin
echo "rsync ok"
sudo umount rootfs
sudo mv rootfs.img ..
cd ..
sudo rm ubuntu-kylin -rf
sudo rm rootfs -rf
echo finish

得到img后,就是我们想要的文件系统了,我们可以单独烧录文件系统,也可以使用sdk中的脚本打包成一个完整的固件。

有些iso已经有img镜像,可以使用下面的脚本提取:

mkdir ubuntu-kylin
mkdir rootfs
sudo mount *.iso ubuntu-kylin 
cp ubuntu-kylin/casper/Kylin*.img.tar.gz rootfs/

cd rootfs/
tar -xf Kylin*.img.tar.gz
cp binary/casper/Kylin-Desktop-V10-Terminal_ZDJDG6797_01-Release-Build01-20220824-GFB-arm64.img ..


cd ..
sudo umount ubuntu-kylin
sudo rm ubuntu-kylin -rf
sudo rm rootfs -rf
echo finish

2. wic镜像转换

# 寻找一个空闲的loop设备
LOOP_DEV=$(losetup -f)
echo ${LOOP_DEV}

# 将镜像映射到loop设备上
sudo losetup -P ${LOOP_DEV} xxx.wic
sudo partprobe ${LOOP_DEV}

# 查看
lsblk

# 挂载分区
mkdir -p ~/{p1,p2}
sudo mount ${LOOP_DEV}p1 ~/p1/
sudo mount ${LOOP_DEV}p2 ~/p2/

# 往p2分区拷贝东西,最好加 -a 参数,保持原有文件属性状态
cp -rf -a xxx ~/p2

# 卸载
sudo umount ~/p1 ~/p2
# 释放loop设备
sudo losetup -d ${LOOP_DEV}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小坚学Linux

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值