为什么 Windows 10 \bin 目录很特殊

为什么 Windows 10 \bin 目录很特殊

尚无理解或解释。

我有两个目录,C:\binC:\Intel\bin

我的路径是...;C:\bin;...;C:\Intel\bin;...

我有sed.exe一个适用于 Windows XP 的 GNU 版本。

我将其复制到C:\bin(以用户身份使用 cmd.exe 复制)并且系统要求以管理员身份运行它,但是从C:\Intel\bin那里运行是可以的。

所有目录 \bin、\intel、\intel\bin 上的权限等都是相同的:

SYSTEM, 
Administrators (PC\Administrators), 
User (PC\User) 

所有权限均已勾选:完全控制、修改、读取和执行、列出文件夹内容、读取、写入

所有目录均已禁用继承。所有目录均归 SYSTEM 所有

没有任何内容具有特殊权限。

有何特别之处\bin

所有目录的属性

两个 sed.exe 均归用户(PC\User)所有,并且两个 sed.exe 具有相同的权限。

两个可执行文件的属性

最新的

我现在已经证明,这其中的关键因素是目录的名称。如果目录名为 \bin,那么在 PC 上编译的程序可以从中运行,但从互联网下载的程序则不能,但如果将目录重命名为 \newbin,那么所有程序都将从该目录运行。

\bin 和 \newbin 的安全属性相同。

\bin 的属性

\newbin 的属性

将 bin 重命名为 newbin

答案1

C:\bin 不是 Windows 使用的文件夹。此文件夹通常没有什么特殊之处。

肯定存在有关 c:\bin 的权限问题,导致您的用户无权写入它,因此要求获得管理权限。因此,即使权限可能相同,也一定存在一些不同之处,导致其行为不同。

我能想到的一件事是文件夹的所有权。即使你对文件夹没有任何权限,如果你拥有文件夹的所有权,你仍然可以做任何事情。你可以进入权限文件夹,高级设置,查看谁是所有者,所有者位于顶部。

很可能 TrustedInstaller 是 c:\bin 的所有者,而您自己的用户是 c:\intel\bin 的所有者。这种情况通常是因为 Windows 更新通过安装驱动程序更新创建了 c:\bin 文件夹,而您自己安装驱动程序时创建了 c:\intel\bin。

编辑:根据现在已删除的答案中的屏幕截图(因为实际上,这不是答案,它应该是对你的问题的编辑)

差异确实是权限问题。C:\Bin 文件夹为 GROUP 用户设置了权限,而 c:\intel\bin 为 USER 用户设置了权限。如果 USER 用户不在 GROUP 用户中,则无法正常工作。为 USER 用户分配完全控制权限,我确信它会正常工作。

相关内容