但是,使用 Windows 11 中的内置 zip 提取功能,提取到 samba 上的网络共享不允许执行程序。使用 Winrar 提取可以正常工作。
我有一个带有可执行文件的 zip 文件及其各种文件(不是安装程序),在下载中或我的网络共享中,似乎并不重要。
我使用内置的 zip 提取器并将其提取到我的 z:/folder 网络共享(linux/samba)。
我收到错误“Windows 无法访问 \name\folder\gamefolder\game.exe 您无权访问 \name\folder\gamefolder\game.exe 请联系您的网络管理员请求访问权限。”
与 PeaZip 相同。
通过这种方式提取的包含单个 .exe 的 zip 文件就可以工作。
使用 Winrar 解压,便携版本就可以正常运行。
我没有看到文件/文件夹安全性、所有者或 rwx 属性有任何区别。
问题是 a) 为什么会有差异,b) 有没有办法让 Windows zip 提取器或 PeaZip 像 WinRar 那样执行此操作?
谢谢。
编辑:在Linux主机上,
- 提取的未运行版本是 -rw-r--r-- 但是
- winrar extract-works 和 extract-local-copy 版本都是 -rwx-r--r--。
因此 x 位不会被 Windows 内置或 Peazip 设置。有趣。
答案1
Winrar 似乎足够智能,可以自动为
exe
SAMBA 共享上的文件设置 x 位,而 Windows 的内置 unzip 和 Peazip 则不会这样做。
要手动修复此问题,请尝试命令chmod +x game.exe
。