保持档案文件和文件夹的权限

我正在打包和分发我为Windows,Linux和Mac制作的程序。 我打算把文件和文件夹放在zip档案中。

如果我设置正确的文件夹和文件权限,然后压缩成zip并重新分配,那么当用户在Linux或Mac系统中提取这些权限时,这些权限是否会保留? 或者他们必须自己设置权限?

Solutions Collecting From Web of "保持档案文件和文件夹的权限"

zip不会在存档中存储文件权限。

tar档案将保留Linux和OS X上的文件权限。我不知道Windows上会发生什么。 如果你可以在Windows上测试一下它,它可能是最好的选择。 这可能取决于人们使用什么工具来解压档案。

另一种选择是创建一个安装程序,尽管创建跨平台安装程序的方法很少。 维基百科有一个列表 。

安装程序是您的最佳选择。 让我解释一下为什么。

Windows有这些权限:

 Modify Read & Execute Read Write 

哪些分配给组或用户名,

基于Unix的系统具有:

 Read Write Execute 

哪些可以分配给所有者,组和其他人。

你可以看到,很难将权限从一个系统映射到另一个系统,因为文件系统处理权限的方式不同。

但是,一些压缩实用程序,如Info-Zip支持基于Unix的文件系统功能,如用户和组ID,文件权限以及对符号链接的支持。 它还支持NTFS文件系统权限,并且将在解压缩文件时尝试将NTFS权限转换为Unix权限,反之亦然。 这可能会导致潜在的意外组合,例如在NTFS卷上创建的可执行权限被拒绝的.exe文件。*

如果您计划分发您的程序,安装程序确实是您的最佳解决方案。

*从维基百科: Zip(文件格式)