Mal*_*ous 25 filesystems utilities fat
有没有办法创建一个包含一组文件的 FAT32 文件系统,而无需挂载它或具有 root 访问权限?
我正在为旧操作系统开发一个软件应用程序作为一种爱好,作为构建过程的一部分,我想将一些源文件打包到一个 FAT32 磁盘映像中,然后启动 QEMU 以启动该映像并在其中运行一个旧编译器它。之后我想从 FAT32 磁盘映像中提取编译后的文件。
我可以使用 来创建文件系统mkfs.vfat,但是我所知道的将文件放入和取出图像的唯一方法是挂载它,这通常需要 root 访问权限并且不利于嵌入到构建过程中。
理想情况下,我追求的是zip和unzip实用程序,而不是创建/提取 .zip 文件,它会以 FAT16 或 FAT32 格式创建和提取磁盘映像。
这样的东西存在吗?我唯一能在网上找到的东西都涉及安装磁盘映像。
Mal*_*ous 43
当然,尽管我所有的搜索都没有成功,但我终于在发布有关它的问题后不久找到了答案。
所以mtools包可以这样做:
# Create a 2 MB file
dd if=/dev/zero of=disk.img bs=1M count=2
# Put a FAT filesystem on it (use -F for FAT32, otherwise it's automatic)
mformat -i disk.img ::
# Add a file to it
mcopy -i disk.img example.txt ::
# List files
mdir -i disk.img ::
# Extract a file
mcopy -i disk.img ::/example.txt extracted.txt
Run Code Online (Sandbox Code Playgroud)
mtools通过指定驱动器号(如C:)来工作,特殊:驱动器(指定为::)指的是命令行上给出的带有-i选项的图像。