Run icacls "path" /reset /C /Q to restore inherited NTFS permissions and clear broken ACL overrides; add /T to apply the reset recursively across an entire folder tree. If “Access is denied” appears even as Administrator, take ownership first with takeown /F "path" /R /D Y, then retry the reset. Orphaned SIDs and files becoming unreachable after a reset are the two most common side effects, both tied to how inheritance is restored from the parent folder. Before resetting system-adjacent or shared directories, back up the existing ACL tree with icacls "path" /save acl_backup.txt /T – it can be restored later with /restore from the parent directory of the saved path.
File and folder permissions are critical in Windows environments. A misconfigured ACL – whether caused by a botched migration, a faulty script, or an accidental manual change – can prevent software from running correctly, block users from accessing their data, or in the worst cases make parts of the operating system behave unexpectedly.
The built-in ICACLS command is the right tool to fix these situations quickly, directly from the command line, without touching the GUI. It works on all modern versions of Windows and Windows Server.
If you also manage storage limits on the same volumes, see our guide on configuring NTFS quotas for users.
Understanding the flags
Before running any command, it’s worth knowing what each flag does:
/RESET: replaces the explicit ACL entries on the target with those inherited from the parent folder. It does not apply new permissions; it simply removes overrides and restores inheritance./T: traverses all subfolders and files recursively./C: continues processing even if access denied errors are encountered on individual files./Q: suppresses success messages, keeping the output clean.
For the complete syntax reference, see the official ICACLS documentation on Microsoft Learn.
Use case 1: Reset a single folder (non-recursive)
When only one folder has broken permissions and its contents are unaffected, target it directly without /T:
icacls "C:\Path\To\Folder" /reset /C /Q
This resets only the ACL of the folder itself, leaving subfolders and files untouched.
Use case 2: Recursive reset
To reset permissions on a folder and everything inside it – including the folder itself – omit the wildcard and let /T handle the recursion:
icacls "C:\Path\To\Folder" /T /C /Q /reset
Use the wildcard variant (\*) only if you intentionally want to skip resetting the root folder’s own ACL.
Use case 3: Reset permissions and take ownership
Sometimes a broken ACL also locks out the current Administrator account, causing ICACLS to return Access is denied errors even when running elevated. In this case, take ownership of the tree first:
takeown /F "C:\Path\To\Folder" /R /D Y
icacls "C:\Path\To\Folder" /T /C /Q /reset
The /R flag makes takeownrecursive; /D Y auto-confirms the prompt on each item. After taking ownership, ICACLS will have the access it needs to rewrite the ACLs.
Common errors
“Access is denied” even as Administrator The account running the command is not the owner and has been explicitly denied access. Run the takeownsequence above before retrying ICACLS.
“No mapping between account names and security IDs” The ACL contains orphaned SIDs – references to deleted or domain-removed accounts. This is harmless: /RESET will clear them along with all other explicit entries.
Files become inaccessible after reset /RESET removes explicit permissions and restores inheritance. If the parent folder has no permissions configured correctly, the contents will inherit nothing and become unreachable. Before running a recursive reset, check the parent folder’s ACL with:
icacls "C:\Path\To\Folder"
Confirm that BUILTIN\Administrators andSYSTEM appear with (F) (Full Control) before proceeding.
A word of caution
Never run a recursive ICACLS reset against system directories such as C:\Windows or C:\Program Files. Resetting inherited permissions in those trees can break system components, services, or installed software. Always target specific user-data or application directories, and when in doubt, back up the existing ACLs first with:
icacls "C:\Path\To\Folder" /save acl_backup.txt /T
This saves the current ACL tree to a file that can be restored later with /restore if needed.
Note that /save stores relative paths. To restore, run the /restore command from the parent directory of the saved path:
icacls "C:\Path\To" /restore acl_backup.txt
Frequently Asked Questions
Does ICACLS /RESET apply new permissions or just remove the old ones?
It doesn’t grant any new permission. /RESET simply strips the explicit ACL entries from the target and restores whatever the parent folder passes down through inheritance. If the parent’s own ACL is wrong or incomplete, the reset won’t fix that – it will just propagate the same problem downward.
Why does ICACLS still say “Access is denied” even when I’m running as Administrator?
Being an administrator doesn’t automatically make you the owner of a file or folder. If the current owner or an explicit deny entry is blocking access, elevation alone won’t help. Run takeown /F “path” /R /D Y to take ownership of the tree first, then retry the ICACLS command.
Is it safe to run a recursive ICACLS reset on system folders like C:\Windows?
No, this should be avoided. Resetting inherited permissions inside system directories such as C:\Windows or C:\Program Files can break installed software, services, or core OS components. Reserve recursive resets for user-data or application folders, and always save a backup with /save beforehand in case you need to restore.
Read related articles
Configuring and using Windows Deployment Services (WDS)
A 2026 guide to WDS: installation, PXE boot, boot/install images, and the limitations introduced with Windows 11 and Server 2025.
How to install and configure Windows Server Update Services (WSUS)
How to install and configure WSUS in 2026: client groups, approval rules, database maintenance, and the critical CVE to patch.
Sysprep in 2026: practical guide for sysadmins and MSPs
What Sysprep is, when to use it, and how to properly generalize a Windows image before distribution or cloning.