我需要创建使用 UDF 并且仅使用 UDF,而不使用 ISO9660 或 Joliet 的 ISO 文件。我使用的是 genisoimage 和 Xfburn,但我发现当用户想要提取而不是安装它们时,ISO 文件中存在 ISO9660 文件系统会导致出现问题。
不幸的是,我在这个问题上找到的唯一答案要求您提前指定 UDF 文件系统所需的空间量,而不是让它动态地符合我放入其中的文件。那会花太长时间。
我更喜欢使用命令行或 GUI 的东西,因为我使用的是 Xfce4,所以不需要安装大量的 GNOME 东西,但乞丐不能是选择者。
mkudffs
创建没有 ISO-9660 数据结构的纯 UDF 文件和文件系统是udftools包
mkudffs
的一部分
sudo apt install udftools
Run Code Online (Sandbox Code Playgroud)
请参阅此处的联机帮助页:http://manpages.ubuntu.com/manpages/bionic/man8/mkudffs.8.html
您首先需要生成一个空白文件来包含图像。也就是说,您必须在通过文件副本“填充”文件大小之前设置文件大小。您可以设置您想要/需要的文件大小,根据du
源目录确定它
示例:创建 CD 映像文件:
truncate -s 650M /dest/cdimage.udf
mkudffs --media-type=cdrw /dest/cdimage.udf
sudo mkdir /media/udfimage
sudo mount -t udf -o loop,rw /dest/cdimage.udf /media/udfimage
sudo cp -R /src/files /media/udfimage
# After the data has been copied to the image,
# unmount the image and detach the loopback device:
# sudo umount /dev/loop0
# sudo rmdir /media/udfimage
Run Code Online (Sandbox Code Playgroud)