Не могу удалить папку, и я администратор. "Вам нужно разрешение для выполнения этого действия. Вам нужно разрешение от…

151

Я не могу удалить определенную папку в Windows 7. Это не системная папка. Он был создан приложением. Я получаю сообщение об ошибке «Вам нужно разрешение для выполнения этого действия. Вам нужно разрешение от Тони ....». Я админ и вошел как сам Тони. У меня есть полное право собственности на папку с полным контролем прав. Я перезагрузил машину. Я убил приложение, которое создало папку. У меня нет идей.

Почему Windows 7 не позволяет мне удалить папку?

Tony_Henrich
источник
Есть ли у вас какие-либо фоновые процессы: TortoiseSVN, антивирусные программы и т. Д., Которые могут зависать в папке (хотя я согласен, что это вряд ли после перезагрузки). Или вы пытались удалить его в безопасном режиме?
PeterJCLaw
Не знаю почему, но если удаление в безопасном режиме не работает, вы можете загрузить свою систему с какого-либо живого компакт-диска (например, Linux) и перейти непосредственно в файловую систему и удалить файл. Это, несомненно, сработает, но если какой-то процесс на самом деле использует файл, то он может нарушить этот процесс (при перезагрузке Windows) с неизвестными последствиями для остальной части вашей системы, поэтому сделайте резервную копию файла, чтобы вы могли поместить его назад, если дела пойдут на юг.
Джо
Просто мысль: каковы атрибуты папки и всего, что под ней? Если что-то настроено только для чтения (или, может быть, системно), вам, вероятно, придется удалить эти атрибуты, прежде чем вы сможете удалить это, даже если вы являетесь его владельцем и администратором. Я долгое время не работал на этом уровне в Windows, но так было раньше.
Джо,
Вы не администратор. Вам говорят, что у вас есть его права. Ошибочно. Квитанция очень просто, посмотрите этот ответ ниже: superuser.com/a/1119561/134259
Гангнус
3
Я в группе администраторов.
Tony_Henrich

Ответы:

115

Я не уверен, почему это происходит, но есть обходной путь.

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

SET DIRECTORY_NAME="C:\Locked Directory"
TAKEOWN /f %DIRECTORY_NAME% /r /d y
ICACLS %DIRECTORY_NAME% /grant administrators:F /t
PAUSE

Вам нужно будет изменить путь к каталогу в соответствии с вашими требованиями, например, «C: \ Locked Directory» на «C: \ Delete Me».

Щелкните правой кнопкой мыши по файлу «delete.bat», выберите «Запуск от имени администратора», и теперь вы должны иметь полный контроль над каталогом и всеми подкаталогами, что означает, что вы можете делать с ними все, что пожелаете.

Сахил
источник
43
Пробовал, но это не сработало.
Tony_Henrich
1
Это облом. Я столкнулся с подобной проблемой на Windows 7 (64-битной) машине, и это работало как шарм.
Сахил
6
Было бы неплохо, если бы Microsoft исправила эту ошибку в Sp1. Это серьезный сбой, и я проклинаю каждый раз, когда мне приходится удалять глубокие вложенные каталоги.
ozczecho
1
+1 У меня было две системные папки на дополнительном диске, которые были созданы ОС до моего обновления Win 8 -> 8.1. Даже через диалог Advanced Security (предпочтительный подход MS) я не мог взять на себя ответственность за удаление. Это работает как шарм.
Джозеф Феррис
1
Windows 8.1 - Файлы и папки создавались удаленно через SMB, только это смогло стать владельцем. После этого я все еще не мог удалить файлы (в сообщении об ошибке указывалось, что я получил разрешение от себя), но диалоговое окно расширенной безопасности было способно исправить разрешения с помощью флажка очистки наследования. После этого я мог удалить файлы.
сдал экзамен
56

Единственным способом было удалить файлы, начиная с папки самого низкого уровня в этой папке. Я получил это сообщение об ошибке с каждой папкой, которая имела подпапки. Я удалил все файлы / подпапки, работающие на моем пути.

Tony_Henrich
источник
13
Это единственное, что сработало и для меня.
BioGeek
stackoverflow.com/questions/1293398/… . посмотри здесь. работал для меня
Tigrou
6
Попробуйте это: Свойства -> Безопасность -> Дополнительно. Убедитесь, что владельцу назначены полные права доступа. Измените разрешения, установите флажок «Заменить все разрешения дочернего объекта ...», «Применить». Теперь попробуйте удалить. Аналог решил для меня ту же проблему под Win8, если некоторые детали немного отличаются.
2012 г.
3
почему это происходит?
Джейсон С
9
Я не могу сделать это, потому что "Доступ запрещен" при попытке открыть его.
Пользователь
30

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

Используйте Process Monitor и фильтр для событий ACCESS DENIED, чтобы выяснить эту глубину

Каждый раз, когда происходит событие ACCESS DENIED, меняйте разрешения, как описано @Sahil .


Вы также можете использовать Handle, чтобы увидеть, какие процессы открывают файлы в вашей папке.

handle C:\Path\To\Folder\You\Are\Trying\To\Delete

Пример:

C:\Windows\system32>handle C:\Windows\System32\inetsrv

Handle v3.45
Copyright (C) 1997-2011 Mark Russinovich
Sysinternals - www.sysinternals.com

svchost.exe   pid: 1500  type: File  134: C:\Windows\System32\inetsrv\config\schema
svchost.exe   pid: 1500  type: File  1B4: C:\Windows\System32\inetsrv\config\schema
svchost.exe   pid: 1500  type: File  1BC: C:\Windows\System32\inetsrv\config
svchost.exe   pid: 1500  type: File  1CC: C:\Windows\System32\inetsrv\config
svchost.exe   pid: 1500  type: File  1D0: C:\Windows\System32\inetsrv\config
inetinfo.exe  pid: 1572  type: File  3C:  C:\Windows\System32\inetsrv\en-US\inetinfo.exe.mui
inetinfo.exe  pid: 1572  type: File  188: C:\Windows\System32\inetsrv\MBSchema.bin.00000000h
inetinfo.exe  pid: 1572  type: File  190: C:\Windows\System32\inetsrv\MBSchema.bin.00000000h
inetinfo.exe  pid: 1572  type: File  1BC: C:\Windows\System32\inetsrv\MetaBase.xml
inetinfo.exe  pid: 1572  type: File  1D4: C:\Windows\System32\inetsrv\MBSchema.xml
svchost.exe   pid: 1884  type: File  1AC: C:\Windows\System32\inetsrv\config\schema
svchost.exe   pid: 1884  type: File  1C0: C:\Windows\System32\inetsrv\config
svchost.exe   pid: 1884  type: File  1C4: C:\Windows\System32\inetsrv\config
Тамара Вийсман
источник
1
Это хороший совет. Моя проблема заключалась в том, что я хотел удалить папку, но получил ошибку «Отказано в доступе». Свойства папки показали, что у меня не было разрешений даже изменить владельца папки. Я использовал Process Explorer и использовал поиск Find Handle, чтобы найти, какой процесс имеет дескриптор заблокированного каталога. Затем я убил процесс, и все снова заработало.
Мас
4
Использование handleкоманд в строке cmd - единственное, что сработало для меня!
Стивен Сюй
1
Спасибо за ваш ответ. handleутилита очень помогла
Шариков Владислав
1
handleПрограмма была замечательна.
MxNx
Даг Маклин
21

Если бы сегодня эта проблема была с папкой Центра обновления Windows, и я хотел бы дополнить ответ.

Когда права доступа к папке правильные (пример ниже, где Admin - учетная запись администратора, в которую я вошел):

введите описание изображения здесь

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

введите описание изображения здесь

Откройте командную строку (лично мне не нужно было поднять приглашение) и запустите

ICACLS <FolderName> /reset /T

введите описание изображения здесь

Заменить списки контроля доступа списками ACL по умолчанию, пройдя через все подпапки. После этого попробуйте удалить папку.

mxl_
источник
2
По-прежнему не работает для меня: «Accès отказ». что означает «отказано в доступе». В любом случае, спасибо, какая боль получить доступ с правами root на windows pffff. (Я был в командной строке запущен с
правами
1
Я получаю handle is invalidошибку. Есть идеи, что это значит?
Джеймс Дрейпер
11

У меня была эта проблема, и я попробовал несколько ответов здесь безрезультатно. Однако я смог просто удалить всю папку, с которой у меня возникли проблемы, из командной строки с повышенными правами, например так:

rmdir "C: \ path \ to \ folder" / s

Надеюсь, это кому-нибудь поможет.

Bryan
источник
Это именно то, что я тоже сделал ... не могу поверить, что мне пришлось просматривать каждый ответ, чтобы найти кого-то еще, кто сделал то же самое. ИМХО должно быть первым, кто попробует.
u8it
Да, это работает, но вы забыли упомянуть, что вы должны открыть окно cmd от имени администратора. Это НЕ то же самое, что быть пользователем с правами администратора.
Гангнус
4
Открыл CMD как администратор, но все же: C: \ ws> rmdir "C: \ ws \ preact-material-components" / s C: \ ws \ preact-material-components, Вы уверены (да / нет)? y Toegang geweigerd. ( доступ запрещен )
Стейн де Витт
1
По-прежнему дает мне «Доступ запрещен»
TrojanName
6

скачайте SysInternals Suite и используйте следующие утилиты

используйте Process Explorer и Process Monitor, чтобы узнать, что происходит с вашим файлом

или используйте следующие автономные утилиты

используйте AccessChk, чтобы получить детали, которые нелегко получить через графический интерфейс

используйте PSFILE для поиска любого процесса, который удерживает файл открытым, затем попробуйте утилиту MoveFile, чтобы запланировать удаление файла в следующем цикле загрузки.

Ответ, который вы ищете, появится в выходных данных одной из этих утилит

kloucks
источник
Process Explorer только что помог мне с этой проблемой - отличный инструмент.
zifot
4

Когда я сталкиваюсь с папкой / файлом, я не могу удалить, и перезагрузка не освобождает файл. Я добавлю в настройки безопасности файла / папки группу «Все» и установлю права на «Запретить полный доступ». Затем, когда я перезагружаю машину, запускается то, что когда-либо использовало файл / папку, она не сможет прочитать / записать или заблокировать файл / папку. Наконец, когда ничто не может использовать файл / папку, вы можете удалить его.

Надеюсь это поможет.

Скотт МакКленнинг
источник
4

Не идите с Windows 7 Ultimate x64. Наконец, пришлось загрузиться с ОС Linux на основе USB (которая игнорирует права доступа к файлам в файловых системах NTFS) и таким образом удалить поврежденный каталог.

Стивен Бюлер
источник
1
Это немного для пользователя Windows (хотя я и предложил то же самое до того, как прочитал ваш ответ;)), но rm -rf дерева подкаталогов наверняка намного быстрее, чем другие методы! Проблема в том, что что-то может сломаться, когда Windows снова запустится, и процесс, который нарушил работу, или что-то еще не может найти папку / файлы.
Джо,
2

Я предполагаю, что UAC включен, и вы пытаетесь удалить папку из Windows Explorer. Вы должны запустить Windows Explorer от имени администратора (щелкните правой кнопкой мыши значок и выберите «Запуск от имени администратора»), а затем удалите папку.

Другой альтернативой является отключение UAC, но я бы не рекомендовал это делать.

ncardeli
источник
1
UAC выключен, и я вошел как администратор. Я попробовал ваш метод и все та же проблема. Плюс UAC - это просто предупреждение, и если вы скажете Да, он продолжит свой процесс.
Tony_Henrich
@Tony UAC на самом деле делает некоторые другие вещи. У меня есть некоторые устаревшие приложения, которые не будут работать под Windows 7 с включенным UAC, даже если вы примете их (на самом деле, даже если у вас слишком низкие запросы, эти приложения не запускаются!) Я действительно хочу Я знал, ПОЧЕМУ это, но это так.
Shinrai
1

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

Вы должны pwn файл сначала,

  1. Щелкните правой кнопкой мыши файл, перейдите в Свойства / Безопасность / Дополнительно .
  2. Вкладка «Владелец» / «Редактировать» / «Изменить владельца» на вас (администратор), сохранить.
  3. Теперь вы можете вернуться в Свойства / Безопасность / и принять Полный контроль над файлом
bobobobo
источник
1

Вы можете использовать утилиту Unlocker для удаления таких папок.

Он очень прост в использовании и совершенно бесплатный.

user1336087
источник
Если быть точным, программное обеспечение - IOBit Unlocker - вышеуказанная ссылка является партнерской ссылкой. Это предложение отлично сработало для меня в Windows 10, чтобы удалить заблокированную загрузку пользователя домена.
Робертмоггач
@mogga: Я уверен, что ссылка изменилась бы за последние 5 лет.
user1336087
0

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

одевать
источник
0

У меня возникла та же проблема (Windows требовала разрешения от пользователя X, хотя он был подключен как пользователь X…):

введите описание изображения здесь

Я исправил это с помощью unlocker (бесплатно, Microsoft Windows), затем сделал:

введите описание изображения здесь

введите описание изображения здесь

После этого я мог удалить каталог без дальнейших проблем.

Франк Дернонкур
источник