撤消 setfacl 更改

撤消 setfacl 更改

在虚拟机中使用 Cygwin,我运行了这个命令

setfacl --remove-all /cygdrive/c

之后我注意到了这条消息:

C:\ is not accessible.
Access is denied.

我通过恢复快照撤消了此更改。然后我运行了这个命令

setfacl --remove-default /cygdrive/c

这并没有拒绝访问驱动器,但它确实在此后创建的任何文件夹上放置了一个锁定图标。

删除默认

假设我在虚拟机之外运行这些命令,那么无需重新安装 Windows 就可以解决这些问题吗?

答案1

我相信以下命令可以修复它。setfacl 删除权限后,您需要暂时取得 的所有权C:\,恢复权限,然后重新设置所有者。当然,这取决于事先备份权限,或者从干净的虚拟机转移权限。

cd /cygdrive/c
icacls . /save acl.txt
setfacl --remove-all .
takeown /f .
icacls . /grant users:f
icacls acl.txt /grant users:f
icacls . /restore acl.txt
icacls . /setowner 'NT SERVICE\TrustedInstaller'

相关内容