MSYS 如何定义文件权限?

MSYS how are file permissions defined?

我对 MSYS 中的文件权限感到非常困惑。在我的公司将我的 windows 用户转移到另一个域后,事情开始出现问题。现在我遇到了这个具体问题:

我要编译cpputest。我使用 windows 解压缩它,启动了一个 msys 控制台,所有者和组如下所示:

M.Grunwald@GNA ~/Projects/cpputest-3.8
$ ls -la
total 1956
drwxrwx---+ 1 M.Grunwald Domain Users               0 16. Nov 10:21 .
drwxrwx---+ 1 M.Grunwald COMPANY_DE+Domain Users    0 16. Nov 10:21 ..
-rwxrwx---+ 1 M.Grunwald Domain Users           11030  2. Mai 2016  .cproject
-rwxrwx---+ 1 M.Grunwald Domain Users             228  2. Mai 2016  .gitattributes
-rwxrwx---+ 1 M.Grunwald Domain Users             746 25. Mai 12:32 .gitignore

and so on.

当我开始 autogen.sh 时,会发生这种情况:

$ ./autogen.sh
autom4te-2.69: cannot open autom4te.cache/requests: Permission denied

$ ls -lad autom4te.cache/
drwxr-xr-x+ 1 M.Grunwald Domain Users 0 Nov 16 10:23 autom4te.cache/

所以这个目录是我的,我有所有的权限,但我不能碰里面的任何东西:

$ touch autom4te.cache/requests
touch: cannot touch 'autom4te.cache/requests': Permission denied

似乎"I"不是真正的M.Grunwald也不属于"Domain Users",也不属于... 另一方面:

$ echo "UID: $UID  GID: $GROUPS"
UID: 1117609  GID: 1049089

$ ls -lnad autom4te.cache/
drwxr-xr-x+ 1 1117609 1049089 0 Nov 16 10:23 autom4te.cache/

因此 ID 匹配。 umask 也是 0000,仍然组和其他人没有写权限。如果我想改变这个:

$ chmod g+w autom4te.cache
chmod: changing permissions of 'autom4te.cache': Permission denied

现在我对许多类似的任务完全感到困惑和受阻(总是权限问题,cpputest 只是一个例子)。你能帮帮我吗?

重新运行安装mingw后问题解决