我最近发布了关于c:\Users\MyUserName
unix根目录中的解压缩文件失去访问权限的帖子/
。我不得不接受这样一个事实:我需要与IT人员谈谈恢复访问权限,所以我不再问这个问题了。但是,我感到困扰的是,这已经发生了,显然是因为所有权c:\Users\MyUserName
变为了SYSTEM
。我想知道这是怎么可能的。我必须重复上述帖子中的一些背景细节。
我无需解决的问题是分布在整个Windows和cygwin文件树中的应用程序配置文件集合,所有这些文件都打包成一个zip文件:
drwx------+ 1 MyUserName Domain Users 0 Nov 24 15:21 c
drwx------+ 1 MyUserName Domain Users 0 Nov 24 15:21 c/Users
drwx------+ 1 MyUserName Domain Users 0 Nov 24 16:12 c/Users/MyUserName
drwx------+ 1 MyUserName Domain Users 0 Nov 24 16:34 c/Users/MyUserName/Documents
-rwxrwx--- 1 MyUserName Domain Users 32464 Jul 28 17:41 c/Users/MyUserName/Documents/_viminfo
-rwxrwx--- 1 MyUserName Domain Users 15092 Jul 27 13:42 c/Users/MyUserName/Documents/_vimrc
drwx------+ 1 MyUserName Domain Users 0 Nov 24 16:11 c/Users/MyUserName/Documents/vimfiles
-rwxrwx--- 1 MyUserName Domain Users 315 Oct 15 2016 c/Users/MyUserName/Documents/vimfiles/.netrwhist
drwx------+ 1 MyUserName Domain Users 0 Nov 24 15:21 c/Users/MyUserName/Documents/vimfiles/after
drwx------+ 1 MyUserName Domain Users 0 Nov 24 15:21 c/Users/MyUserName/Documents/vimfiles/after/ftplugin
-rwxrwxr-x 1 MyUserName Domain Users 39 Feb 9 2016 c/Users/MyUserName/Documents/vimfiles/after/ftplugin/netrw.vim
drwx------+ 1 MyUserName Domain Users 0 Nov 24 15:21 c/Users/MyUserName/Documents/vimfiles/after/syntax
-rwxrwxr-x 1 MyUserName Domain Users 28 Jun 19 2013 c/Users/MyUserName/Documents/vimfiles/after/syntax/tex.vim
drwx------+ 1 MyUserName Domain Users 0 Nov 24 15:21 c/Users/MyUserName/Documents/vimfiles/colors
-rwxrwx--- 1 MyUserName Domain Users 5006 May 27 2016 c/Users/MyUserName/Documents/vimfiles/colors/mine.vim
drwx------+ 1 MyUserName Domain Users 0 Nov 24 15:21 c/Users/MyUserName/Documents/vimfiles/plugin
-rwxrwxr-x 1 MyUserName Domain Users 26547 Sep 17 2014 c/Users/MyUserName/Documents/vimfiles/plugin/bufexplorer.vim
-rw------- 1 MyUserName Domain Users 3024 Jan 26 2015 c/Users/MyUserName/Documents/vimfiles/plugin/ChristiansHi20150126.vim
drwx------+ 1 MyUserName Domain Users 0 Nov 24 15:21 c/Users/MyUserName/Documents/vimfiles/spell
-rwxrwxr-x 1 MyUserName Domain Users 963 Sep 8 2014 c/Users/MyUserName/Documents/vimfiles/spell/en.latin1.add
drwx------+ 1 MyUserName Domain Users 0 Nov 24 15:21 c/Users/MyUserName/Documents/vimfiles/syntax
-rw-r--r-- 1 MyUserName Domain Users 8870 Feb 13 2015 c/Users/MyUserName/Documents/vimfiles/syntax/asy.vim
-rwxrwxr-x 1 MyUserName Domain Users 2749 Jul 30 2013 c/Users/MyUserName/Documents/vimfiles/syntax/texmf.vim
-rwxrwxr-x 1 MyUserName Domain Users 33322 Jun 8 2011 c/Users/MyUserName/Documents/vimfiles/syntax/vbnet.vim
drwx------+ 1 MyUserName Domain Users 0 Nov 24 15:21 etc
-rwxrwx--- 1 MyUserName Domain Users 518 Dec 4 2014 etc/fstab
-rw-r--r-- 1 MyUserName Domain Users 192 Aug 19 2014 etc/fstab.cygwin64default
drwx------+ 1 MyUserName Domain Users 0 Nov 24 15:21 etc/fstab.d
-rwxrwx--- 1 MyUserName Domain Users 0 Aug 4 2011 etc/fstab.d/SomeUserName
drwx------+ 1 MyUserName Domain Users 0 Nov 24 15:21 home
drwx------+ 1 MyUserName Domain Users 0 Nov 24 15:21 home/MyUserName
-rwx------ 1 MyUserName Domain Users 1852 Aug 21 14:21 home/MyUserName/.alias.bash
-rwx------ 1 MyUserName Domain Users 1503 Aug 19 2014 home/MyUserName/.alias.csh
lrwxrwxrwx 1 MyUserName Domain Users 7 Nov 24 15:21 home/MyUserName/.bash_login -> .bashrc
-rwxr-xr-x 1 MyUserName Domain Users 1150 Aug 19 2014 home/MyUserName/.bash_profile
-rwxr-xr-x 1 MyUserName Domain Users 2499 Jun 15 2015 home/MyUserName/.bashrc
-rwx------ 1 MyUserName Domain Users 1904 Aug 19 2014 home/MyUserName/.cshrc
-rwxr-xr-x 1 MyUserName Domain Users 41 Aug 19 2014 home/MyUserName/.inputrc
-rw-r--r-- 1 MyUserName Domain Users 101 Aug 19 2014 home/MyUserName/.minttyrc
-rwx------ 1 MyUserName Domain Users 102 Jan 27 2015 home/MyUserName/.octaverc
-rwxr-xr-x 1 MyUserName Domain Users 65 Dec 2 2014 home/MyUserName/.pdfjam.conf
-rwxr-xr-x 1 MyUserName Domain Users 792 Aug 19 2014 home/MyUserName/.profile
-rw------- 1 MyUserName Domain Users 51 Jun 14 2015 home/MyUserName/.Renviron
-rw------- 1 MyUserName Domain Users 706 Apr 20 2015 home/MyUserName/.Rprofile
-rwx------ 1 MyUserName Domain Users 58 Jun 16 2015 home/MyUserName/.startxwinrc
-rwx------ 1 MyUserName Domain Users 9521 Aug 19 2014 home/MyUserName/.twmrc
-rwx------ 1 MyUserName Domain Users 9306 Aug 19 2014 home/MyUserName/.twmrc.alt
-rwx------ 1 MyUserName Domain Users 1803 May 1 2015 home/MyUserName/.Xresources
drwx------+ 1 MyUserName Domain Users 0 Nov 24 15:21 home/MyUserName/bin
-rwxrwx--- 1 MyUserName Domain Users 138 May 14 2012 home/MyUserName/bin/a2pdf.bash
-rwxrwx--- 1 MyUserName Domain Users 8 Jan 25 2014 home/MyUserName/bin/bc.rc
-rwxrwx--- 1 MyUserName Domain Users 29 Jan 25 2014 home/MyUserName/bin/dosbc
-rw------- 1 MyUserName Domain Users 1557 Nov 8 2013 home/MyUserName/bin/dvi2pdfa
-rwxrwx--- 1 MyUserName Domain Users 349 Aug 2 2013 home/MyUserName/bin/pcvim
drwx------+ 1 MyUserName Domain Users 0 Nov 24 15:21 usr
drwx------+ 1 MyUserName Domain Users 0 Nov 24 15:21 usr/share
drwx------+ 1 MyUserName Domain Users 0 Nov 24 16:11 usr/share/vim
lrwxrwxrwx 1 MyUserName Domain Users 35 Nov 24 15:21 usr/share/vim/vimfiles -> /c/Users/MyUserName/Documents/vimfiles
lrwxrwxrwx 1 MyUserName Domain Users 33 Nov 24 15:21 usr/share/vim/vimrc -> /c/Users/MyUserName/Documents/_vimrc
我将文件树解压缩到一个临时工作目录中,然后tar
从该目录发出以下复合命令:
tar cf - * | ( cd / ; tar xf - )
这样做后,我失去了访问权限c:\Users\MyUserName
,似乎原因是所有权变为SYSTEM
:
$ls -ld /c/Users/MyUserName
drwx------+ 1 SYSTEM SYSTEM 0 2017-11-24 16:56 /c/Users/MyUserName
请注意,所有权不在 SYSTEM
上面从zip文件解压缩的源文件树中。同样,我的cygwin安装是作为非管理员(setup-x86_64.exe --no-admin
)安装的。这似乎很奇怪的tar.exe
是能够改变的所有权c:\Users\MyUserName
来SYSTEM
,要少得多会改变它。
我担心tar
将来使用这种可能的危险。这是一个奇怪的问题,必须让IT人员恢复所有权几乎是一个肯定的方式来让我的商店禁止cygwin。更现实的是,我会删除执行权限tar.exe
,但对我来说,这是一个巨大的障碍。
在另一台机器上,我尝试使用测试文件树(不包括c:\Users\MyUserName
)复制问题,但无法复制问题。
什么可以解释所有权的变化,以及如何tar
在避免危害的同时仍然使用?
请注意,由于批准软件安装的艰难和脆弱的过程,我使用的是2015版的Cygwin。我在过去在该帖子顶部的开头句中链接的网站上记录了我对此问题的疑难解答。
为什么你只在24小时后转发你的问题?
—
Ramhound
Windows中的用户配置文件目录默认由System拥有,并且不会导致任何用户失去访问权限。
—
kreemoweet
@Ramhound:这是一个不同的问题。我在这里引用的页面询问如何恢复权限,而这个问题是关于是否有人可以解释tar如何做到这一点,目的是为了能够在未来使用tar(而不是引起IT民众的愤怒)。
—
user36800
@kreemoweet:好名字!:)你的评论很有启发性。我说我无法在另一台机器上复制问题。那台机器显示c:\ Users \ MyUserName也归SYSTEM所有,我没有相同的权限问题。这证实了您的评论。但鉴于此,如果不是所有权,您是否可以评论导致许可问题的确切原因?我怀疑所有者对有问题的机器有rwx权限,但是组没有(与工作机器相反)。我会在星期一尝试用chmod修复它。
—
user36800
虽然我必须说,组权限为rwx似乎很奇怪......毕竟,这是一个人的帐户。同样奇怪的是,在发布问题中的文件列表中,所有者显示为MyUserName,这并未证实c:\ Users \ MyUserName由SYSTEM拥有。然而,这可能只是所有权的cygwin翻译(对吗?)
—
36800