我有一个Linux TAR文件,我想直接转换成ISO。 有没有办法做到这一点,最好,而不必先提取文件的内容?
这与以下问题类似: 然而,这是集中在简单或直接的tar文件,而不涉及bzip或bzipped焦油。
这也是我打算在脚本中使用的,也是我不想首先提取的原因。
使用AVFS访问tar归档文件的内容,就好像它是一个目录一样。 AVFS是build立在FUSE上的虚拟文件系统。 将你最喜欢的ISO构build器指向tar档案中的目录。
mountavfs cd ~/.avfs/path/to/archive.tar\# genisoimage -o /path/to/iso .
如果你的主要目标是加快进程,并避免不必要的磁盘活动的性能的原因,你有足够的RAM相对于你的tarball的大小,你可以提取.tar到RAM使用tmpfs 。 这个选项很可能是最快的,除非你能够使@ bulleric的pipe道方法工作, 并且你正在从一个磁盘读取数据并写入另一个磁盘。
archivemount /file.tar /media/ISO
或未压缩的.tar和
genisoimage -o myfile.iso directory_src
( 可以是文件夹 /media/ISO 或点装 /media/cdrom )
你必须提取它,但你不必将其提取到你的硬盘上,你可以使用stdtout并将其pipe理到genisoimage或mkisofs
tar --to-stdout xf tareddata.tar | genisoimage -o image.iso tareddata
testing一下: mount -o loop image.iso /mnt
你可以写一个小脚本来自动化这个问题
格瑞兹公牛