我有一个具有以下权限的路径:
E:\MY_PATH BUILTIN\Administrators:(OI)(CI)F
NT AUTHORITY\SYSTEM:(OI)(CI)F
BUILTIN\Administrators:F
CREATOR OWNER:(OI)(CI)(IO)F
BUILTIN\Users:(OI)(CI)R
BUILTIN\Users:(CI)(special access:)
FILE_APPEND_DATA
BUILTIN\Users:(CI)(special access:)
FILE_WRITE_DATA在这个路径中有一个我不能修改或删除的文本文件:我只能追加行。
我想知道如何授予对此文件的写一段时间,然后返回到原始设置。
这是一个日志文件,它变得太大了,所以我想省略较旧的行,只保留最近的1000行。
但我没有删除行或删除文件的权限。
请帮帮忙。
提前谢谢你。
我刚读完CACLS /?但是我不知道如何使用这个命令。
发布于 2012-08-15 20:29:53
我不太确定你想怎么解决这个问题。
为什么不直接给用户修改日志的权限呢?如果需要管理员更改ACL,那么他为什么不编辑日志文件?是否可以在日志服务/应用程序运行时编辑日志?
太多问题了,现在是我的答案。我将使用icacls,而不是cacls。
授予权限:
icacls logfilename /grant *S-1-5-32-545:(WD)
要删除权限(仅当授予的ACL条目是该文件上该用户的唯一ACL条目时才有效!):
icacls logfilename /remove *S-1-5-32-545
我使用的是SID,而不是上面调用中的名称,因为SID独立于操作系统语言,并且在您的英语Windows和我的德语Windows上的工作方式相同。
如果你想要一个保存-恢复逻辑,你可以保存文件的ACL调用
icacls logfilename /save aclsavefile
并使用以下命令恢复ACL
icacls . /restore aclsavefile
如您所见,保存需要文件名,而恢复需要文件夹名(文件名存储在aclsavefile中,并从aclsavefile中取出)。注意:在Windows 7上恢复ACL需要(备份?)权限,并且仅当以管理员身份运行时才能执行此操作。
https://stackoverflow.com/questions/11863005
复制相似问题