windows中使用icacls命令还原文件夹的权限设置

Icacls是Windows系统中用于管理文件和目录访问控制列表(ACLs)的命令行工具,它取代了Cacls.exe。本文介绍了Icacls的基本用法,包括保存和恢复ACL,设置文件所有者,查找特定SID,验证ACL规范性,重置ACL,以及权限的授予、拒绝和移除等操作。示例展示了如何在命令行中执行各种Icacls命令。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

icacls命令简介

Icacls 是一种命令行工具,它显示或修改指定文件上的随机访问控制列表 (DACL),并将存储的 DACL 应用于指定目录中的文件。Icacls.exe 替换了 Cacls.exe 工具用于查看和编辑 DACL。ICACLS 是 Windows Server 2003 SP2 中 CACLS 工具的升级版本,可用于从恢复控制台重设文件中的帐户控制列表 (ACL) 以及备份 ACL。与 CACLS 不同的是,ICACLS 可以正确地传送对继承的 ACL 的更改和创建。有关 ICACLS 的使用及命令的更多信息,可以通过在命令提示符下运行“icacls /?”进行访问。这里的I应该是Improved upgrade of cacls.

以下面是CMD中的icacls命令帮助手册:

代码如下:

Microsoft Windows [版本 6.1.7601]
版权所有 (c) 2009 Microsoft Corporation。保留所有权利。
C:\Users\Administrator>icacls
ICACLS name /save aclfile [/T] [/C] [/L] [/Q]
将匹配名称的文件和文件夹的 DACL 存储到 aclfile 中以便将来与
/restore 一起使用。请注意,未保存 SACL、所有者或完整性标签。
ICACLS directory [/substitute SidOld SidNew [...]] /restore aclfile
[/C] [/L] [/Q]
将存储的 DACL 应用于目录中的文件。
ICACLS name /setowner user [/T] [/C] [/L] [/Q]
更改所有匹配名称的所有者。该选项不会强制更改所有身份;
使用 takeown.exe 实用程序可实现该目的。
ICACLS name /findsid Sid [/T] [/C] [/L] [/Q]
查找包含显式提及 SID 的 ACL 的所有匹配名称。
ICACLS name /verify [/T] [/C] [/L] [/Q]
查找其 ACL 不规范或长度与 ACE 计数不一致的所有文件。
ICACLS name /reset [/T] [/C] [/L] [/Q]
为所有匹配文件使用默认继承的 ACL 替换 ACL。
ICACLS name [/grant[:r] Sid:perm[...]]
[/deny Sid:perm [...]]
[/remove[:g|:d]] Sid[...]] [/T] [/C] [/L]
[/setintegritylevel Level:policy[...]]
/grant[:r] Sid:perm 授予指定的用户访问权限。如果使用 :r,
这些权限将替换以前授予的所有显式权限。
如果不使用 :r,这些权限将添加到以前授予的所有显式权限。
/deny Sid:perm 显式拒绝指定的用户访问权限。
将为列出的权限添加显式拒绝 ACE,
并删除所有显式授予的权限中的相同权限。
/remove[:[g|d]] Sid 删除 ACL 中所有出现的 SID。使用
:g,将删除授予该 SID 的所有权限。使用
:d,将删除拒绝该 SID 的所有权限。
/setintegritylevel [(CI)(OI)] 级别将完整性 ACE 显式添加到所有
匹配文件。要指定的级别为以下级别之一:
L[ow]
M[edium]
H[igh]
完整性 ACE 的继承选项可以优先于级别,但只应用于
目录。
/inheritance:e|d|r
e - 启用继承
d - 禁用继承并复制 ACE
r - 删除所有继承的 ACE
注意:
Sid 可以采用数字格式或友好的名称格式。如果给定数字格式,
那么请在 SID 的开头添加一个 *。</p> <p> /T 指示在以该名称指定的目录下的所有匹配文件/目录上
执行此操作。</p> <p> /C 指示此操作将在所有文件错误上继续进行。仍将显示错误消息。</p> <p> /L 指示此操作在符号链接本身而不是其目标上执行。</p> <p> /Q 指示 icacls 应该禁止显示成功消息。</p> <p> ICACLS 保留 ACE 项的规范顺序:
显式拒绝
显式授予
继承的拒绝
继承的授予
perm 是权限掩码,可以两种格式之一指定:
简单权限序列:
N - 无访问权限
F - 完全访问权限
M - 修改权限
RX - 读取和执行权限
R - 只读权限
W - 只写权限
D - 删除权限
在括号中以逗号分隔的特定权限列表:
DE - 删除
RC - 读取控制
WDAC - 写入 DAC
WO - 写入所有者
S - 同步
AS - 访问系统安全性
MA - 允许的最大值
GR - 一般性读取
GW - 一般性写入
GE - 一般性执行
GA - 全为一般性
RD - 读取数据/列出目录
WD - 写入数据/添加文件
AD - 附加数据/添加子目录
REA - 读取扩展属性
WEA - 写入扩展属性
X - 执行/遍历
DC - 删除子项
RA - 读取属性
WA - 写入属性
继承权限可以优先于每种格式,但只应用于
目录:
(OI) - 对象继承
(CI) - 容器继承
(IO) - 仅继承
(NP) - 不传播继承
(I) - 从父容器继承的权限
示例:
icacls c:\windows\* /save AclFile /T
- 将 c:\windows 及其子目录下所有文件的
ACL 保存到 AclFile。
icacls c:\windows\ /restore AclFile
- 将还原 c:\windows 及其子目录下存在的 AclFile 内
所有文件的 ACL。
icacls file /grant Administrator:(D,WDAC)
- 将授予用户对文件删除和写入 DAC 的管理员权限。
icacls file /grant *S-1-1-0:(D,WDAC)
- 将授予由 sid S-1-1-0 定义的用户对文件删除和写入 DAC 的权限。

 

<think>好的,用户想了解如何在Windows文件系统中导出文件夹的用户权限设置。我之前处理过类似的问题,记得有几个方法可以实现。首先,用户可能需要在服务器或者本地电脑上进行操作,所以需要给出通用的步骤。 根据引用中的信息,引用[3]提到了使用xcopy命令并保留权限,例如xcopy /o /x /e /h /k。这可能是一个命令行方法,可以复制文件夹及其权限。但用户的问题是关于“导出”权限,而不仅仅是复制时保留,所以可能需要更直接的备份方法。 然后引用[2]提到了一键备份服务器文件夹权限使用icacls命令导出权限到文本文件。这应该是一个可行的方法,因为icaclsWindows自带的工具,可以用来查看和保存权限信息。比如icacls 文件夹路径 /save 文件名应该可以导出权限列表。 另外,引用[3]还提到在迁移文件夹时保留权限,可能需要结合xcopy或robocopy命令,这些命令在复制时可以保留原有的权限设置。但用户的问题主要是导出权限,而不是迁移,所以重点可能应该放在icacls或者导出到文件的方法上。 还需要考虑用户可能没有命令行经验,所以是否需要提供图形界面操作的方法?比如使用“备份和还原”功能,但引用中没有提到相关步骤,可能不太适用。不过根据我的知识,Windows的备份工具可能可以备份权限,但需要确认。 另外,用户可能需要将权限导出为可恢复的格式,以便之后可以重新应用。这时候icacls的/save和/restore选项可能更合适,因为可以生成一个文件,之后可以用这个文件恢复权限。 总结下来,步骤可能包括: 1. 使用icacls命令导出权限到文本文件。 2. 使用xcopy或robocopy复制文件夹并保留权限,作为另一种备份方式。 3. 可能的话,使用Windows备份工具,但需要确认是否可行。 需要验证这些方法的正确性,确保命令参数正确。比如icacls的正确用法,以及xcopy的参数是否包括保留权限的选项。根据引用[3],xcopy使用/o /x等参数可以保留权限,这可能适用于NTFS文件系统。 最后,提醒用户注意事项,比如需要管理员权限,以及权限恢复时的步骤。可能还需要提到不同系统版本可能有差异,但一般icacls在较新的Windows系统中都可用。</think>### 如何导出Windows文件夹的用户权限设置Windows文件系统中,导出文件夹的用户权限设置可通过以下方法实现,分为**权限备份**和**迁移时保留权限**两种场景: --- #### **方法1:使用`icacls`命令导出权限列表** 1. 以管理员身份打开命令提示符(CMD)或PowerShell 2. 输入以下命令导出权限信息到文本文件: ```cmd icacls "C:\目标文件夹路径" /save "D:\权限备份.txt" /t /c ``` - `/save`:将权限保存到指定文件 - `/t`:递归处理所有子文件夹 - `/c`:忽略错误继续执行 3. 导出的`权限备份.txt`包含用户/组及其对应权限,格式如: ```text Users:(OI)(CI)(RX) # 表示继承的读取和执行权限 ``` --- #### **方法2:复制文件夹时保留权限(迁移场景)** 使用`xcopy`或`robocopy`命令复制文件夹并保留原始权限[^3]: ```cmd xcopy /o /x /e /h /k "C:\原文件夹" "D:\新文件夹" ``` - `/o`:保留所有权和ACL信息 - `/x`:保留文件审核设置 - `/e`:包含空子目录 - `/h`:复制隐藏和系统文件 或使用更强大的`robocopy`: ```cmd robocopy "C:\原文件夹" "D:\新文件夹" /copyall /e /zb ``` - `/copyall`:复制所有属性(包括权限) - `/zb`:允许绕过文件访问限制 --- #### **方法3:通过共享文件夹权限备份工具** 对于服务器环境,可使用微软官方工具(如`SubInACL`)或第三方软件: 1. 下载并安装`SubInACL`,执行以下命令导出共享权限: ```cmd subinacl /noverbose /output="D:\共享权限.txt" /subdirectories "C:\共享文件夹" ``` 2. 生成的文件包含共享权限和NTFS权限的详细配置[^2][^3]。 --- ### 注意事项 1. **管理员权限**:执行上述命令需以管理员身份运行。 2. **NTFS文件系统**:权限备份仅适用于NTFS格式的磁盘。 3. **权限恢复**:使用`icacls /restore`或直接应用备份文件还原权限: ```cmd icacls "C:\目标文件夹" /restore "D:\权限备份.txt" ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值