我目前正在设计一个基于 Linux 的系统。该系统的用户将被允许从互联网上下载内容,即程序。内容将以 zip 包的形式分发,并给出特殊的扩展名,例如.cpk 而不是 .zip,并且压缩为零。
我想为用户提供与 iOS 和 Android 相同的体验,其中内容分布在包含的包中并从那里运行。
我的问题是,我可以让我的 Linux 系统在不解压包的情况下运行包内的程序吗?如果没有,那么是否有另一种方法可以实现我在 Linux 中所追求的目标?
请注意,我不想将内容提取到临时文件夹并在执行后删除它们,因为这可能需要很长时间,特别是对于大内容。这也将使运行内容所需的存储空间增加一倍。
提前谢谢你。
最佳答案
klik (至少在 klik2 CMG format 中)使用了 zISO图像,可以由内核或 FUSE 客户端安装,而不是 zip。您可以使用内核或通过 FUSE 支持的其他文件系统类型。也许fuse-zip值得一试吗?
您还可以修改加载器以直接从包中读取。例如,Android 的 Dalvik VM 可以直接从 apk 包中加载 dex 文件,这些文件实际上是 zip 文件。 (然而,Android 上的原生代码仍然需要先解压,并且确实需要更多的时间和空间。修改原生加载器是……棘手的。)
关于linux - 像在 Android 和 iOS 中一样为 Linux 分发内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4953430/