Rmdir windows отказано в доступе

Загрузить PDF

Загрузить PDF

Это случалось со всеми из нас, во время очистки жесткого диска или удаления вирусов. И вот, вы весело удаляете ненужные файлы и БАМ:’Cannot delete <filename>: Access is denied.’Make sure the disk is not full or write-protected and that the file is not currently in use.Теперь что? Кажется, что вы застряли на этом файле, но просто следуйте этим инструкциям и вы избавитесь от файла за несколько минут.

  1. Step 1 Закройте все открытые программы.

    Самой распространенной причиной этой ошибки является программа, использующая файл, который вы пытаетесь удалить. Например, если вы пытаетесь удалить документ, который открыт в Word, или пытаетесь удалить песню, которая на данный момент проигрывается.[1]

    • Закройте все открытые программы и попробуйте снова удалить файл.
    • Закройте любые программы совместного пользования файлами. Многие подобные программы передают файлы невидимым образом. Если программа пытается передать файл, который вы удаляете, вы получите сообщение об ошибке.
  2. Step 2 Откройте Диспетчер задач.

    Нажмите Ctrl + Alt + Del и выберите Диспетчер задач из меню. Нажмите на вкладку Пользователи и найдите вводы под вашим именем пользователя. Большинство таких программ можно закрыть без нанесения ущерба системе.

    • Закройте те, которые узнаете, выбрав их и нажав Завершить процесс.
    • Если вы закроете программу в результате которой система станет нестабильной, перезагрузите компьютер, чтобы отменить..
  3. Step 3 Перезагрузите компьютер.

    Часто перезагрузка компьютера освободит конкретный файл от программы, удерживающей ее удаление. Попробуйте удалить файл после перезагрузки и перед тем, как вы запустите любые другие программы.

    Реклама

  1. Step 1 Найдите программу разблокировки процессов.

    Популярные опции включают Unlocker и WhoLockMe. Обе эти программы бесплатные и интегрируются в интерфейс вашего Windows.[2]

    • У обеих программ относительно простые установки. Распакуйте файл в случае необходимости и откройте файл Setup или Install. Типичные параметры установки будут работать для большинства пользователей.
    • Некоторые программы могут попробовать установить панели инструментов браузера во время установки. Если вы не хотите устанавливать новые панели инструментов, то отмените выбор.
  2. Step 2 Кликните правой кнопкой мыши по файлу, который хотите удалить.

    Выберите только что установленный инструмент из меню. Откроется новое окно. Откроется список всех программ, которые на данный момент имеют доступ к файлу.

  3. Step 3 Закройте программы.

    Выберите программу, которую хотите закрыть и нажмите на кнопку Kill Process. Когда все блокирующие программы будут закрыты, вы сможете удалить файл без проблем.

    Реклама

  1. Step 1 Откройте расположение файла на вашем жестком диске.

    • Если вы не можете найти файл, попробуйте использовать функцию Поиска. Нажмите на меню Пуск и введите имя файла в поле Поиска. В Windows 8, начните вводить имя файла, когда откроется экран Пуск.
  2. Step 2 Кликните правой кнопкой мыши по файлу и выберите Свойства.

    Удалите (снимите) все атрибуты файла или папки.

  3. Step 3 Запишите расположение файла.

  4. Step 4 Откройте окно Командной строки.

    Вы можете сделать это, нажав на Пуск и набрав “cmd” в поле Поиска.

  5. Step 5 Закройте все открытые программы.

    Оставьте открытым окно Командной строки, но закройте все остальные открытые программы.

  6. Step 6 Откройте Диспетчер задач.

    Нажмите Ctrl + Alt + Del и выберите Диспетчер задач из меню.

  7. Step 7 Нажмите на вкладку Процессы в Диспетчере задач.

    Найдите процесс под названием “explorer.exe”. Выберите его и нажмите Завершить процесс. Сложите Диспетчер задач, но оставьте его открытым.

  8. Step 8 Вернитесь к окну Командной строки.

    Следуйте нижеприведенному примеру для удаления файла под названием “myFile.exe,” расположенного в Мои Документы.

    Реклама

В окне Командной строки вы найдете путь:C:\Documents and Settings\XYZ> (где XYZ это имя аккаунта пользователя).
Выполните следующую команду в окне Командной строки:: cd My Documents (C:\Documents and Settings\XYZ>cd My Documents)
Теперь путь изменится и будет выглядеть как:C:\Documents and Settings\XYZ\My Documents>
Используйте команду DEL, чтобы удалить мешающий файл в окне Командной строки.Syntax : Type DEL <filename> (где <filename> это файл, который вы хотите удалить).Пример: C:\Documents and Settings\XYZ\My Documents>del myFile.exe

  1. Step 1 Удалите папку.

    Следуйте нижеприведенному примеру, чтобы удалить папку под названием “Новая папка”, расположенную в каталоге Мои Документы.

В Командной строке откройте путь:C:\Documents and Settings\XYZ> (где XYZ это имя аккаунта пользователя).
Теперь используйте команду RMDIR /S /Q, чтобы удалить мешающую папку в окне Командной строки.Syntax : Type RMDIR /S /Q «<path>» (где <path> это расположение папки, которую вы хотите удалить).Пример: C:\Documents and Settings\XYZ>rmdir /s /q «C:\Documents and Settings\XYZ\My Documents\New Folder»

  1. Step 1 Используйте ALT+TAB, чтобы вернуться к Диспетчеру задач.

    В Диспетчере задач нажмите на Файл, выберите Новая задача и введите EXPLORER.EXE, чтобы перезагрузить интерфейс Windows.

  2. Step 2 Закройте Диспетчер задач.

    Теперь файл должен быть удален.

    Реклама

Советы

  • Для большей информации о командах DOS, введите HELP в Командной строке или можете поискать в Интернете.
  • Если вы хотите изменить ваш Жесткий диск в Командной строке, используйте следующую команду:
    Syntax: <Drive Letter>:
    Example: C:\Documents and Settings\XYZ>D:
    D:\>
  • Чтобы вернуться к предыдущему каталогу в Командной строке, вы можете использовать следующую команду:
    CD..

Реклама

Предупреждения

  • Не забудьте выполнить Новая задача «EXPLORER.EXE» в Диспетчере Задач.
  • Этот трюк не сработает, если удаляемый файл используется другой программой. Как файл mp3, который проигрывается, но вы хотите его удалить. В этом случае, закройте проигрыватель и затем удалите.
  • Не завершайте никакой другой процесс, кроме «EXPLORER.EXE». Это может привести к нежелательным результатам, включая потерю данных, нестабильность системы и краху Операционной системы, или повреждению.

Реклама

Источники

Об этой статье

Эту страницу просматривали 11 376 раз.

Была ли эта статья полезной?

  • Windows Support Forums

  • General Support

You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an alternative browser.

Rmdir fails to delete folder with admin access

  • Thread starter
    Thread starter

    chiuchimu

  • Start date
    Start date

Local time
2:43 PM
Posts
3
OS
win11 pro




  • #1

I run win11 pro on a minis forum um690.

I am using Cobian Reflector to incrementally backup my documents which makes a lot of empty folders. I can easily delete these empty directories in File Explorer using context menu. I wanted to automate this in a batch file but found that these empty folders made by my backup program are not easy to delete by command line. I have tried RD «My \folder\path» and get access denied. I have tried changing the ownership from myself, Admin, to Everyone and also change their respective permissions to full control but still get Access denied. Oddly, RD «My \folder\path» /s will delete the folder(adding the /q flag makes it quite). The «/s» deletes subfolders and files so that implies that the folder was not empty but show hidden files is checked and properties shows 0 files, 0 bytes and 0 folders in file explorer.

Although this works, it deletes empty subfolders which I don’t want to happen because it is a backup. I just want empty folders in current directory deleted and empty folders that are down deeper in other directories left alone.


My Computer



  • OS
    win11 pro
    Computer type
    PC/Desktop
    Manufacturer/Model
    minis forum/um690
    CPU
    amd
    Screen Resolution
    4k




  • #2

Have you removed inheritance? I have to remove it first to be able to do anything.

takeown /s %computername% /u %username% /f "%SystemDrive%\Users\Public\Desktop" /r /d y
icacls "%SystemDrive%\Users\Public\Desktop" /inheritance:r
icacls "%SystemDrive%\Users\Public\Desktop" /inheritance:e /grant:r %username%:(OI)(CI)F /t /l /q /c


My Computer



  • OS
    Windows 11 Home
    Computer type
    PC/Desktop
    CPU
    AMD Ryzen 5 8600G (07/24)
    Motherboard
    ASROCK B650M-HDV/M.2 3.20 (07/24)
    Memory
    2x32GB Kingston FURY DDR5 5600 MHz CL36 @5200 CL40 (07/24)
    Graphics Card(s)
    ASROCK Radeon RX 6600 Challenger D 8G @48FPS (08/24)
    Sound Card
    Creative Sound BlasterX AE-5 Plus (05/24)
    Monitor(s) Displays
    24″ Philips 24M1N3200ZS/00 (05/24)
    Screen Resolution
    1920×1080@165Hz via DP1.4
    Hard Drives
    Kingston KC3000 NVMe 2TB (05/24)
    ADATA XPG GAMMIX S11 Pro 512GB (07/19)
    PSU
    Seasonic Core GM 550 Gold (04/24)
    Case
    Fractal Design Define 7 Mini with 3x Noctua NF-P14s/12@555rpm (04/24)
    Cooling
    Noctua NH-U12S with Noctua NF-P12 (04/24)
    Keyboard
    HP Pavilion Wired Keyboard 300 (07/24) + Rabalux 76017 Parker (01/24)
    Mouse
    Logitech M330 Silent Plus (04/23)
    Internet Speed
    500/100 Mbps via RouterOS (05/21) & TCP Optimizer
    Browser
    Edge & Brave for YouTube & LibreWolf for FB
    Antivirus
    NextDNS blocking 99% TLDs
    Other Info
    Backup: Hasleo Backup Suite (PreOS)
    Headphones: Sennheiser RS170 (09/10)
    Phone: Samsung Galaxy Xcover 7 (02/24)
    Chair: Huzaro Force 4.4 Grey Mesh (05/24)
    Notifier: Xiaomi Mi Band 9 Milanese (10/24)
    2nd Monitor: AOC G2460VQ6 @75Hz (02/19)

Local time
5:43 PM
Posts
252




  • #3

After thinking about this problem, I can come up with only one answer:
If your chosen backup solution is not working, then try something else. There are actually many.

I like doing Data Backups because they are Quick and as easy as plugging in my Data Backup Flash drive, and running a little batch file.
In that batch file I use «XCOPY» (old DOS command) to do my backups. With a wide range of switches, it can do just about any kind of data backup you want.

I really like its ability to just back up the new files and ignore the old files that have already been backed up.
Regular Data backups, usually only take a few seconds.

Just a thought!
TM


My Computer



Local time
2:43 PM
Posts
3
OS
win11 pro




  • #4

After thinking about this problem, I can come up with only one answer:
If your chosen backup solution is not working, then try something else. There are actually many.

I like doing Data Backups because they are Quick and as easy as plugging in my Data Backup Flash drive, and running a little batch file.
In that batch file I use «XCOPY» (old DOS command) to do my backups. With a wide range of switches, it can do just about any kind of data backup you want.

I really like its ability to just back up the new files and ignore the old files that have already been backed up.
Regular Data backups, usually only take a few seconds.

Just a thought!
TM

Thanks for reply. I can delete the folder thru explorer, robocopy so I believe xcopy will use the same method. Basically my Mickey Mouse work around is to move everything onto itself with the subfolders flag «/s» included( ie; Robocopy /my/folder/path /my/folder/path /s /move). It works but deletes every empty folder including subfolders which I don’t want it to do. Also I prefer to fix it properly; it is some setting/property that I can’t access or nobody knows how to access — seriously, I search the whole internet. I have tried this on three computers, my um690 running win11 pro, SER5 win11pro and a win10 machine and this access denied problem happened all computers. Anyone can duplicate this problem. I might have to try writing my own code with my very limited programming ability.


My Computer



  • OS
    win11 pro
    Computer type
    PC/Desktop
    Manufacturer/Model
    minis forum/um690
    CPU
    amd
    Screen Resolution
    4k

Local time
2:43 PM
Posts
3
OS
win11 pro




  • #5

Update. This strange issue seems to have cleared it self. I’ve been workin on this issue for a week and just today I retried Rmdir and it worked. I even used a simple:

for /d %d in (.) do rd «%d»

and it work on two of my machines. Now I just have to turn this into an EXE and my backup solution is complete. I think the issue was a windows update because it solved itself. I had an issue with win updates breaking my system by crashing my AMD GPU driver but an update 3 weeks later fixed the issue — it started with 3/1/2023 update and ended around 3/25/2023 update . I think a similar thing happened here. I’m posting this in case someone else runs into same issue.


My Computer



  • OS
    win11 pro
    Computer type
    PC/Desktop
    Manufacturer/Model
    minis forum/um690
    CPU
    amd
    Screen Resolution
    4k

Try3

Well-known member

Local time
10:43 PM
Posts
3,343
Location

CurrentCounty

OS
Windows 11 Home x64 Version 23H2 Build 22631.3447




  • #6

Now I just have to turn this into an EXE

If you mean use something like Bat2Exe then do note that what they do is create a self-extracting archive file [much like WinZip can] then, when you run it, it extracts the batch file then runs the batch file.

All the best,
Denis


My Computer



  • OS
    Windows 11 Home x64 Version 23H2 Build 22631.3447

Similar threads

  • Windows Support Forums

  • General Support

Проблемы

При попытке удалить папки, хранящиеся на подключенном диске, и отправить их в корзину, может появиться следующее сообщение об ошибке:

Не удается удалить имя_папки: отказано в доступе. Исходный файл, возможно, используется.

Причина

Это происходит из-за того, что корзина не распознает подключенные тома. Например, предположим, что используется следующий макет диска:

C:—1 гигабайт (ГБ) с помощью файла NTFS systemC: \ Host-dir—точка монтирования для отдельного устройства с 9 ГБПри попытке удалить папку с помощью пути C:\Host-dir\Mydir проводник Windows считает папку на диске C и попытается ее поместить в корзину на диске C.

Обходное решение

Чтобы устранить эту ошибку, воспользуйтесь одним из описанных ниже способов.

  • При удалении файлов или папок с помощью проводника используйте сочетание клавиш SHIFT + DELETE. Это обходит корзину.

  • Откройте окно командной строки, а затем с помощью команды RD/s/q удалите файлы или папки.

Примечание. Оба эти метода окончательно удаляют данные. Вы не можете восстановить данные, если у вас нет текущей резервной копии.

Статус

Корпорация Майкрософт подтвердила, что эта проблема связана с продуктами Майкрософт, которые перечислены в начале этой статьи.

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

  1. How do I fix Access Denied administrator?
  2. Why does my Womply say Access Denied?
  3. Why am I getting access denied to a website?
  4. How do you delete a file that won’t delete?
  5. How do you delete a file that Cannot be deleted?
  6. How do I gain access to a denied file?
  7. Why do I need administrator permission when I am the administrator?

How do I fix Access Denied administrator?

Right-click the file/folder and select Properties from the context menu. Go to the Security tab. Select the administrator account from and check if it has permission in the Permissions section. If the account does not have permission, click Edit and grant it all permissions.

Why does my Womply say Access Denied?

It’s possible that your Womply access denied error occurs because there are interruptions to your Womply connection, or your computer has been blocked by them. And connecting through a VPN can help you get around these obstructions. Using a VPN usually requires some time and computer skills.

Why am I getting access denied to a website?

You’re working on your computer and suddenly you get an error message that says “Access Denied, You don’t have permission to access this server”. There could be a number of reasons this is happening including the server was taken down, the URL has changed, or the host may have disabled access from a VPN.

How do you delete a file that won’t delete?

One is simply using the delete option, and the other one is deleting files permanently. When you can’t delete a file normally, you can delete undeletable files Windows 10 by selecting the target file or folder and then press Shift + Delete keys on the keyboard for a try.

How do you delete a file that Cannot be deleted?

To do this, start by opening the Start menu (Windows key), typing run, and hitting Enter. In the dialogue that appears, type cmd and hit Enter again. With the command prompt open, enter del /f filename, where filename is the name of the file or files (you can specify multiple files using commas) you want to delete.

How do I gain access to a denied file?

The most common fix to try when you see «folder access denied» is to take ownership of the folder through the File Explorer. Here’s how to do this. First, right-click the folder or file in question and select Properties. On the resulting window, switch to the Security tab.

Why do I need administrator permission when I am the administrator?

Answers. Hi, This situation happens because you are not the owner of this folder of file, The default owner of a file or folder is the person who creates the resource. Log on the computer with the account which created the folder of file, namely the owner, then you are permitted to modify the file or folder.

Нашёл 2 решения, как запретить пользователю удалять папку, соединение (связь, junction) или символическую ссылку (symbolic link) с папкой (не проверял), но при этом сохранить все другие права для работы с подпапками и файлами. В данном случае я рассматриваю вариант настройки личной папки пользователя. То есть, на эту папку у него изначально есть полные права и только у него (у других пользователей, помимо «Система» и группы «Администраторы», прав быть не должно). Если в вашем варианте будет использоваться общая папка, то и пользователи (скорее всего группы) будут иными, но суть подхода это не меняет.
Идеи не мои, поэтому скажем спасибо одному сайту и форуму и четырём их пользователям, двое спросили, а другие двое ответили.

1-й вариант (работает только на запрет удаления, переименование остаётся доступным).
Оказалось, что достаточно выставить атрибут «Только чтение» для папки (соединения или ссылки) и запретить «Только для этой папки» «Запись атрибутов». Я предпочитаю подстраховаться, поэтому добавляю ещё немного запрета (тем более, иначе почему-то возникают проблемы в настройках, подробности под спойлером). В итоге, есть два варианта: а) оставить наследование прав и добавить запрет; б) снять наследование и прописать разрешения без определённых прав. Тут, конечно, дело не в самом наследовании, а в том, что с ним приходят, в данном случае, полные права. Так что, если не используются какие-либо дополнительные участники безопасности, то права будут следующие:
а) (с использованием наследования прав и явного запрета)
%UserName% — Запрет — Только для этой папки — Запись атрибутов, Удаление, Смена разрешений, Смена владельца.
%UserName% — Разрешение — Для этой папки, её подпапок и файлов — Полный доступ.
СИСТЕМА — Разрешение — Для этой папки, её подпапок и файлов — Полный доступ.
Администраторы — Разрешение — Для этой папки, её подпапок и файлов — Полный доступ.
б) (без наследования прав и явного запрета)
%UserName% — Разрешение — Только для подпапок и файлов — Полный доступ.
%UserName% — Разрешение — Только для этой папки — Чтение и выполнение, Создание файлов / Запись данных, Создание папок / Дозапись данных, Запись дополнительных атрибутов, Удаление подпапок и файлов.
СИСТЕМА — Разрешение — Для этой папки, её подпапок и файлов — Полный доступ.
Администраторы — Разрешение — Для этой папки, её подпапок и файлов — Полный доступ.

В этом варианте есть два недостатка, папка всё равно доступна для переименования и мы не сможем менять все основные атрибуты — «Архивный», «Скрытый», «Системный» и «Только чтение» (небольшая справка по атрибутам под спойлером).

2-й вариант (запрещает как удалять папку, так и переименовывать её).
Настройки будут касаться двух папок, той, которую мы хотим запретить удалять и её родительской папки. Именно в такой связке это и работает. Из этих двух папок, у родительской убираем разрешение «Только для этой папки» — «Удаление подпапок и файлов», а у дочерней разрешение «Только для этой папки» — «Удаление». Как и в первом варианте, есть два подварианта:
а) (с использованием наследования прав и явного запрета)
Родительская папка:
%UserName% — Запрет — Только для этой папки — Удаление подпапок и файлов, Смена разрешений, Смена владельца.
%UserName% — Разрешение — Для этой папки, её подпапок и файлов — Полный доступ.
СИСТЕМА — Разрешение — Для этой папки, её подпапок и файлов — Полный доступ.
Администраторы — Разрешение — Для этой папки, её подпапок и файлов — Полный доступ.
Дочерняя папка:
%UserName% — Запрет — Только для этой папки — Удаление, Смена разрешений, Смена владельца.
%UserName% — Разрешение — Для этой папки, её подпапок и файлов — Полный доступ.
СИСТЕМА — Разрешение — Для этой папки, её подпапок и файлов — Полный доступ.
Администраторы — Разрешение — Для этой папки, её подпапок и файлов — Полный доступ.
б) (без наследования прав и явного запрета)
Родительская папка:
%UserName% — Разрешение — Только для этой папки — все права, кроме — Удаление подпапок и файлов, Смена разрешений, Смена владельца.
%UserName% — Разрешение — Только для подпапок и файлов — Полный доступ.
СИСТЕМА — Разрешение — Для этой папки, её подпапок и файлов — Полный доступ.
Администраторы — Разрешение — Для этой папки, её подпапок и файлов — Полный доступ.
Дочерняя папка:
%UserName% — Разрешение — Только для этой папки — все права, кроме — Удаление, Смена разрешений, Смена владельца.
%UserName% — Разрешение — Только для подпапок и файлов — Полный доступ.
СИСТЕМА — Разрешение — Для этой папки, её подпапок и файлов — Полный доступ.
Администраторы — Разрешение — Для этой папки, её подпапок и файлов — Полный доступ.

Для обоих вариантов, для большей подстраховки можно ещё сменить владельца, но для этого придётся повысить права.

Подробные настройки и образцы команд для экспериментов.

Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
Эксперимент проводил в ограниченной учётной записи пользователя Windows 10 x64 Pro Ru 20H2 (естественно, командную строку запускал с правами пользователя, т.е. без повышения прав).
Изначально имеем папку "D:\Temp\TestFolder", её мы настраиваем и не трогаем при тестировании. Её права: снято наследование от родительской папки, Администраторы:(OI)(CI)(F), СИСТЕМА:(OI)(CI)(F), "%UserName%":(OI)(CI)(F), Владелец: "%UserName%". Команда для настройки папки: ICACLS.exe "D:\Temp\TestFolder" /remove:g "*S-1-5-18" "*S-1-5-32-544" "*S-1-5-32-545" "%UserName%" /remove:d "*S-1-5-18" "*S-1-5-32-544" "*S-1-5-32-545" "%UserName%" /grant:r "*S-1-5-18":(OI)(CI)(F) "*S-1-5-32-544":(OI)(CI)(F) "%UserName%":(OI)(CI)(F) /inheritance:r /C
Если необходимо, владельца меняем (с повышением прав) вручную или командой: ICACLS.exe "D:\Temp\TestFolder" /setowner "%UserName%" /C
 
Далее, описана процедура подходящая как для эксперимента «с нуля», так и для ситуации, когда мы уже поэкспериментировали с папками (поэтому часть действий избыточна).
Для подстраховки сбрасываем права (если команда не сработает, придётся это сделать вручную или удалить папки): ICACLS.exe "D:\Temp\TestFolder\User" /reset /T /C
Удаляем сразу все, возможно имеющиеся, папки, т.к. это проще, чем приводить их артибуты в исходное состояние: RmDir /S /Q "D:\Temp\TestFolder\User"
Создаём нужные папки.
MkDir "D:\Temp\TestFolder\User"
MkDir "D:\Temp\TestFolder\User\1"
 
1 вариант (работает только на запрет удаления).
Настраиваем права папки «User» (в данном варианте она нам не нужна, но я её оставил чтобы не было путаницы из-за второго варианта, который описан ниже):
ICACLS.exe "D:\Temp\TestFolder\User" /remove:g "*S-1-5-18" "*S-1-5-32-544" "%UserName%" /remove:d "*S-1-5-18" "*S-1-5-32-544" "%UserName%" /grant:r "*S-1-5-18":(OI)(CI)(F) "*S-1-5-32-544":(OI)(CI)(F) "%UserName%":(OI)(CI)(F) /inheritance:r /C
Настраиваем атрибут: Attrib.exe +R "D:\Temp\TestFolder\User\1"
Два подварианта:
а) (с использованием наследования прав и явного запрета):
ICACLS.exe "D:\Temp\TestFolder\User\1" /remove:g "*S-1-5-18" "*S-1-5-32-544" "%UserName%" /remove:d "*S-1-5-18" "*S-1-5-32-544" "%UserName%" /deny "%UserName%":(WA,DE,WDAC,WO) /inheritance:e /C
б) (без наследования прав и явного запрета):
ICACLS.exe "D:\Temp\TestFolder\User\1" /remove:g "*S-1-5-18" "*S-1-5-32-544" "%UserName%" /remove:d "*S-1-5-18" "*S-1-5-32-544" "%UserName%" /grant:r "*S-1-5-18":(OI)(CI)(F) "*S-1-5-32-544":(OI)(CI)(F) "%UserName%":(OI)(CI)(IO)(F) "%UserName%":(RX,WD,AD,WEA,DC) /inheritance:r /C
 
Проверяем права: ICACLS.exe "D:\Temp\TestFolder\User" /T /C
Просмотр установленных атрибутов: Attrib.exe "D:\Temp\TestFolder\User" /S /D
Проверка на удаление: RmDir /S /Q "D:\Temp\TestFolder\User\1"
Проверка на переименование: ReName "D:\Temp\TestFolder\User\1" "1_New"
Просмотр содержимого папок: Dir "D:\Temp\TestFolder\User" /A /S
 
Немного о странностях. 
  Проводник, в контекстном меню папки, перед пунктами «Удалить» и «Переименовать» показывает иконку щита. То есть, проводник уверен, что удалить и переименовать можно только с повышением прав. С переименованием он ошибается. Впрочем, фактически с удалением тоже, т.к. при данных настройках для изменения прав повышение не нужно.
  Если в запрете указать только «WA» (запись атрибутов), то почему-то прописывается ещё и «S» (синхронизация). Если так же настроить через визуальный интерфейс результат будет тем же. При добавлении большего количества запретов, такого эффекта не возникает. Возможно, это связано с атрибутом архивации. Пример настройки прав: ICACLS.exe "D:\Temp\TestFolder\User\1" /remove:g "*S-1-5-18" "*S-1-5-32-544" "%UserName%" /remove:d "*S-1-5-18" "*S-1-5-32-544" "%UserName%" /deny "%UserName%":(WA) /inheritance:e /C . Результат для пользователя «User»: User:(DENY)(S,WA), User:(I)(OI)(CI)(F).
  Если в запрете указать «D» (в отдельности или с другими правами), то происходит какой-то сбой в правах и ОС перестаёт пускать в папку. Хотя, судя по правам (как через GUI, так и через ICACLS.exe) всё нормально и проблем быть не должно. При показе прав через ICACLS.exe пишет "D:\Temp\TestFolder\User\1\*: Отказано в доступе. Успешно обработано 2 файлов; не удалось обработать 1 файлов". А ведь там больше ничего нет, только две папки. Может, нельзя прописывать права одновременно в краткой и подробной форме? Но, с другими комбинациями ((M,WDAC,WO) и (RX,W,WDAC,WO,DC)) проблем нет. Причём, судя по документации «D» можно использовать при прописывании прав, да и сама ICACLS.exe при просмотре прав пишет «D», а не «DE». При использовании «DE» проблем нет.
  Что касается настройки прав, то так и не понял, в чём моя ошибка. 
 
2 вариант (запрещает как удалять папку, так и переименовывать её).
Настраиваем права:
а) (с использованием наследования прав и явного запрета)
ICACLS.exe "D:\Temp\TestFolder\User" /remove:g "*S-1-5-18" "*S-1-5-32-544" "%UserName%" /remove:d "*S-1-5-18" "*S-1-5-32-544" "%UserName%" /deny "%UserName%":(DC,WDAC,WO) /inheritance:e /C
ICACLS.exe "D:\Temp\TestFolder\User\1" /remove:g "*S-1-5-18" "*S-1-5-32-544" "%UserName%" /remove:d "*S-1-5-18" "*S-1-5-32-544" "%UserName%" /deny "%UserName%":(DE,WDAC,WO) /inheritance:e /C
б) (без наследования прав и явного запрета)
ICACLS.exe "D:\Temp\TestFolder\User" /remove:g "*S-1-5-18" "*S-1-5-32-544" "%UserName%" /remove:d "*S-1-5-18" "*S-1-5-32-544" "%UserName%" /grant:r "*S-1-5-18":(OI)(CI)(F) "*S-1-5-32-544":(OI)(CI)(F) "%UserName%":(M) "%UserName%":(OI)(CI)(IO)(F) /inheritance:r /C
ICACLS.exe "D:\Temp\TestFolder\User\1" /remove:g "*S-1-5-18" "*S-1-5-32-544" "%UserName%" /remove:d "*S-1-5-18" "*S-1-5-32-544" "%UserName%" /grant:r "*S-1-5-18":(OI)(CI)(F) "*S-1-5-32-544":(OI)(CI)(F) "%UserName%":(RX,W,DC) "%UserName%":(OI)(CI)(IO)(F) /inheritance:r /C
 
Проверяем права: ICACLS.exe "D:\Temp\TestFolder\User" /T /C
Просмотр установленных атрибутов: Attrib.exe "D:\Temp\TestFolder\User" /S /D
Проверка на удаление: RmDir /S /Q "D:\Temp\TestFolder\User\1"
Проверка на переименование: ReName "D:\Temp\TestFolder\User\1" "1_New"
Просмотр содержимого папок: Dir "D:\Temp\TestFolder\User" /A /S
 
И опять о странностях.
  Проводник, в контекстном меню папки, перед пунктом «Удалить» показывает иконку щита. То есть, проводник уверен, что удалить можно только с повышением прав, а переименовать можно без повышения. Тут он ошибается с переименованием. 
  Если настроить обе папки, то это работает, а вот если только дочернюю (с явным запретом), то нет. И это при том, что приоритет в правах такой (в порядке убывания): Явные отзывы, Явные предоставления, Унаследованные отзывы, Унаследованные предоставления.
  Вот такая команда «ICACLS.exe "D:\Temp\TestFolder\User" /remove:g "*S-1-5-18" "*S-1-5-32-544" "%UserName%" /remove:d "*S-1-5-18" "*S-1-5-32-544" "%UserName%" /deny "%UserName%":(DC,WDAC,WO) /inheritance:e /C» почему-то так же прописывает запрет на синхронизацию: %UserName%:(DENY)(WDAC,WO,S,DC).
 
 
Краткая справка по применённым в командах правам.
Распространение прав:
(I) - наследование прав от родительской папки.
(OI)(CI) - "Для этой папки, её подпапок и файлов".
(OI)(CI)(IO) - "Только для подпапок и файлов".
без параметра - "Только для этой папки".
Сами права:
M - доступ на изменение - все права, кроме - Удаление подпапок и файлов, Смена разрешений, Смена владельца.
RX - Чтение и выполнение - Обзор папок / Выполнение файлов, Содержание папки / Чтение данных, Чтение атрибутов, Чтение дополнительных атрибутов, Чтение разрешений.
W - доступ только на запись - Создание файлов / Запись данных, Создание папок / Дозапись данных, Запись атрибутов, Запись дополнительных атрибутов.
M,WDAC,WO - все права, кроме - "Удаление подпапок и файлов".
RX,W,DC,WDAC,WO - все права, кроме - "Удаление".
 
Список прав доступных для изменения через визуальный интерфейс:
Полный доступ .................. - F
Обзор папок / Выполнение файлов  - X
Содержание папки / Чтение данных - RD
Чтение атрибутов ............... - RA
Чтение дополнительных атрибутов  - REA
Создание файлов / Запись данных  - WD
Создание папок / Дозапись данных - AD
Запись атрибутов ............... - WA
Запись дополнительных атрибутов  - WEA
Удаление подпапок и файлов ..... - DC
Удаление ....................... - DE
Чтение разрешений .............. - RC
Смена разрешений ............... - WDAC
Смена владельца ................ - WO
 
/remove:g и /remove:d использую, чтобы гарантированно убрать лишние уже имеющиеся разрешения и запреты (но это не всегда нужно).
 
Участники безопасности:
"*S-1-5-18" - Система.
"*S-1-5-32-544" - группа "Администраторы".
"*S-1-5-32-545" - группа "Пользователи".
 
Небольшая справка по основным атрибутам (взята из Википедии).
В операционных системах DOS и Microsoft Windows существуют четыре атрибута:
   Архивный (A): Когда этот атрибут установлен, это означает, что файл был изменён со времени проведения последнего резервного копирования. ПО, с помощью которого выполняется резервное копирование, также отвечает за снятие этого атрибута.
   Скрытый (H): Файл с установленным атрибутом считается скрытым. Это означает, что команды MS-DOS (dir) и программы Windows (такие как Проводник) по умолчанию не будут отображать этот файл, если не включён специальный режим.
   Системный (S): Файл с установленным атрибутом считается системным — таким, существование которого в неизменённом виде критически важно для нормальной работы системы. По умолчанию команды MS-DOS (dir) и программы Windows (такие как Проводник) не будут отображать этот файл, если не включён специальный режим.
   Только чтение (R): Установленный атрибут означает, что содержимое файла нельзя изменять. Как правило, программы для Windows игнорируют этот атрибут, если он установлен для каталогов.



1



Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Как выключить выключение экрана на windows 11
  • Чистый образ windows 10 pro x64 1909
  • Ru windows 7 ultimate with sp1 x64 dvd u 677391 iso torrent
  • Как установить wordpress на windows server 2012
  • Как переключить монитор на дискретную видеокарту на ноутбуке на windows 11