我在 Linux Mint 计算机上安装了 Windows 应用程序,例如,在 Demo 目录中。在 Demo 文件夹中,我有如下文件目录结构。
-rwxrwxrwx spuser spuser aaa.dll
-rwxrwxrwx spuser spuser bbb.ttf
-rwxrwxrwx spuser spuser ccc.ref
-rwsrwxrwx spuser spuser DemoApp.EXE <= I've set setuid command on this file
drwxrwxrwx spuser spuser icons
drwxrwxrwx spuser spuser secure
drwxrwxr-- spuser spuser lang
如果我以 spuser 权限运行 DemoApp.EXE,它会正常工作,DemoApp.EXE 可以读取 lang 目录中的文件。但是当我以普通用户权限运行 DemoApp.EXE 时,它会出现错误,提示无法读取 lang 目录中的文件,因为我将其设置为只读(如上目录结构)。我尝试在 Linux mint 中使用 WINE 运行这两个程序,或者在 Windows PC 上运行此程序,结果相同。
请给我建议,抱歉我的英语不好。
答案1
为了读取目录中的文件,必须设置目录上的可执行位“x”。
到目前为止,只有 spuser 和 spuser 组的成员可以进入该目录。
cd lang
当您是不同的用户时,只需检查一下。
chmod o+rx lang 将修复它。