重写脚本以使用dd而不是挂载

时间:2017-04-22 19:42:33

标签: linux windows sh windows-subsystem-for-linux

我正在尝试重写bash脚本以不使用mount命令。我想删除mount命令,这样我就可以使用目前不支持挂载的Windows子系统Linux来运行它。

在将一些C代码编译到名为bootimg的文件中之后调用此脚本。 它需要一个文件mp3.img(原始二进制文件),并以某种方式将新的bootimg文件和filesys_img文件放入其中,生成更新的mp3.img文件。

这是原始代码。

#!/bin/sh

if [ -d /mnt/tmpmp3 ]; then
rmdir /mnt/tmpmp3
fi

if [ -d /tmp/mp3 ]; then
rm -rf /tmp/mp3
fi

mkdir /mnt/tmpmp3
mkdir /tmp/mp3
cp ./bootimg /tmp/mp3/
cp ./filesys_img /tmp/mp3/
cp ./mp3.img /tmp/mp3/
mount -o loop,offset=32256 /tmp/mp3/mp3.img /mnt/tmpmp3
cp -f /tmp/mp3/bootimg /mnt/tmpmp3/
cp -f /tmp/mp3/filesys_img /mnt/tmpmp3/
umount /mnt/tmpmp3
cp -f /tmp/mp3/mp3.img ./
rm -rf /tmp/mp3
rmdir /mnt/tmpmp3

我真的不明白如何将img文件作为环回设备工作。 我一直在尝试用dd替换mount,但还没有成功。

如何更改此scipt以使用dd(或类似的东西)构建更新的mp3.img文件而不是安装它?

0 个答案:

没有答案