Станьте владельцем файла или папки с помощью командной строки в Windows

У каждого файла или папки на томе NTFS есть владелец. Некоторые системные файлы принадлежат TrustedInstaller, некоторые - учетной записи SYSTEM, а другие - группе «Администраторы». Если пользователь создает файл или папку, этот пользователь обычно является владельцем файла или папки. Владелец - это тот, кто может назначать разрешения (Разрешить или Запретить) другим пользователям для этого объекта.

Если пользователь не является владельцем файла или папки или не имеет разрешений на доступ к файлу, он получает ошибку «доступ запрещен» при доступе к объекту. Если этот пользователь является администратором, он может стать владельцем объекта с помощью вкладки Свойства файла или папки - Безопасность. Затем он может назначить себе необходимые разрешения.

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

СОДЕРЖАНИЕ

  • Принятие права владения файлом с помощью takeown.exe
  • Назначьте права доступа к файлам с помощью icacls.exe
  • Принятие права владения папкой с помощью takeown.exe
  • Назначьте права доступа к папке с помощью icacls.exe
  • Возьмите на себя ответственность и назначьте разрешения через контекстное меню [Script / Tweak]

Дополнительная информация

  • ИНФОРМАЦИЯ: icacls.exe также может менять владельца
  • Вернуть право собственности на TrustedInstaller
  • ОШИБКА: icacls.exe / setowner «Доступ запрещен»
  • Использование SetACL.exe для получения права собственности и назначения разрешений [Стороннее бесплатное ПО]

Windows включает инструмент командной строки с именем Takeown.exe, который можно использовать из Командная строка администратора чтобы быстро сменить владельца файла или папки. Вот как стать владельцем файла или папки а затем назначьте разрешения для учетной записи с помощью командной строки.

Станьте владельцем с помощью командной строки takeown.exe

Принятие права владения файлом

Откройте повышенная командная строка окно. Используйте следующий синтаксис, чтобы стать владельцем файла:

ПРИНЯТЬ / F 

Заменять с фактическим именем файла с полным путем.

Текущий пользователь, вошедший в систему, теперь является владельцем файла.

Устанавливать Администраторы сгруппируйте владельца файла, используйте / А переключатель дополнительно:

ПРИНЯТЬ / F  / А
  • / А Предоставляет право собственности группе администраторов вместо текущего пользователя. Если / А не указан, право собственности на файл будет передано пользователю, вошедшему в систему. Этот параметр нет деликатный случай.

Если операция прошла успешно, вы должны увидеть следующее сообщение:

«УСПЕХ: файл (или папка):« filename »теперь принадлежит пользователю« Имя компьютера \ Имя пользователя ».»

или

УСПЕХ: файл (или папка): «filename» теперь принадлежит группе администраторов.

Назначить права доступа к файлам

Затем предоставить Администраторы Полные права доступа к файлу, используйте ICACLS. Вот синтаксис:

ICACLS / администраторы гранта: F

Пример 2: Чтобы назначить разрешения полного доступа для текущего пользователя, вошедшего в систему, используйте эту команду:

ICACLS / grant% имя пользователя%: F

%имя пользователя% представляет имя учетной записи текущего вошедшего в систему пользователя. ICacls принимает эту переменную напрямую.

Пример 3: Назначение разрешений на полный доступ для пользователя с именем Джон, используйте эту команду:

ICACLS / Грант Джон: F

Принятие права владения папкой

Используйте следующий синтаксис:

взлет / f 

(или)

взлет / f  / а
  • / а Предоставляет право собственности группе администраторов вместо текущего пользователя. Если / а не указан, право собственности будет передано пользователю, вошедшему в систему в данный момент. Этот параметр нет деликатный случай.

Вы увидите следующий результат:

УСПЕХ: файл (или папка): «имя_папки» теперь принадлежит пользователю «имя_компьютера \ имя_пользователя»

(или)

УСПЕХ: файл (или папка): «имя_папки» теперь принадлежит группе администраторов.

Рекурсивно изменить владельца:

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

взлет / f / г / д г

Текущий пользователь, вошедший в систему, теперь является владельцем папки.

Устанавливать Администраторы рекурсивно сгруппируйте владельца папки, ее подпапок и файлов, используйте / А переключатель дополнительно:

ПРИНЯТЬ / F  / а / г / д г
  • Recurse: указывает инструменту работать с файлами в указанном каталоге и во всех подкаталогах.
  • / D подсказка Ответ по умолчанию, используемый, когда текущий пользователь не имеет разрешения «список папок» для каталога. Это происходит при рекурсивной работе (/ R) с подкаталогами. Допустимые значения «Y», чтобы стать владельцем, или «N», чтобы пропустить.

Назначить права доступа к папке

Затем присвоить Администраторы группа Full Control Permissions для папки, используйте этот синтаксис:

icacls / администраторы гранта: F / T

В / Т добавлен параметр, чтобы операция выполнялась во всех подкаталогах и файлах в этой папке.

Справка командной строки:

Чтобы узнать полную информацию об использовании Takeown.exe и ICacls.exe, запустите эти команды из окна командной строки.

вынос /?
icacls /?

Более простые методы получения права собственности

Командный сценарий

Чтобы еще больше упростить процесс вступления во владение, Тим Снит Microsoft предоставляет файл .CMD (командный сценарий Windows), который становится владельцем и назначает разрешения полного доступа администраторам для каталога. Для получения дополнительной информации прочтите сообщение Тима под названием Секрет # 11: удаление не удаляемого.

Добавьте команду «Стать владельцем» в контекстное меню.

Здесь снова используется специальный беги как глагол в Windows Vista и более поздних версиях, о котором я говорил ранее (REFБеги как).

с помощью WinMatrix.com

Скачать takeown_context.reg и сохраните на рабочий стол. Щелкните файл правой кнопкой мыши и выберите Объединить. Нажмите да при запросе подтверждения. Это добавляет расширенную команду с именем Взять на себя ответственность в контекстном меню для файлов и каталогов. Чтобы получить доступ к команде, вам нужно нажать и удерживать СДВИГ и щелкните правой кнопкой мыши файл или папку.

(Подробнее о твике вы можете прочитать в статье Станьте владельцем файла или папки с помощью контекстного меню, вызываемого правой кнопкой мыши в Windows..)


Дополнительная информация

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

icacls.exe также может изменить владельца файла или папки!

Takeown.exe и Icacls.exe - это два встроенных в Windows инструмента консоли, которые позволяют изменять владельца файла или папки и назначать разрешения на управление доступом соответственно. Takeown.exe устанавливает текущую учетную запись пользователя в качестве владельца объекта (файла или папки).

Однако с Takeown.exe вы не можете сделать другую учетную запись владельцем объекта.

Знаете ли вы, что инструмент icacls.exe также можно использовать для смены владельца?

Чтобы сменить владельца на стороннюю учетную запись (т. Е. Учетную запись, в которую в настоящее время не вошел вход) или группу, вы можете использовать icacls.exe с /setowner аргумент командной строки вместо takeown.exe.

Изменение владельца файла или папки с помощью icacls.exe

Мы видели, как изменить владельца с помощью icacls.exe в последней части статьи. Станьте владельцем файла или папки с помощью командной строки в Windows. Вот еще несколько примеров:

Ниже приведен синтаксис командной строки для изменения владельца файла или папки с помощью icacls.exe:

icacls "имя_файла или папки" / setowner "NT Service \ TrustedInstaller"

Примеры: Набор №1: изменение владельца отдельного файла или папки.

icacls "D: \ Annual Reports \ 2020 \ November" / владелец сайта "Джон"
icacls "D: \ Tax Audit \ November.xlsx" / владелец сайта "John"
icacls "D: \ Tax Audit \ November.xlsx" / владелец "Администраторы"

Если операция прошла успешно, вы увидите следующее сообщение:

обработанный файл: file_or_folder_name
Успешно обработано 1 файл; Ошибка обработки 0 файлов

Пример # 2: рекурсивное изменение владельца папки (подпапки и файлов)

Чтобы изменить владельца папки, ее подпапок и всех файлов во всех подпапках рекурсивно, используйте / Т переключатель (траверса) дополнительно:

icacls "имя_папки" / setowner "Администраторы" / T
  • / Т указывает, что эта операция выполняется для всех совпадающих файлов / каталогов ниже каталогов, указанных в имени.

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


Вернуть право собственности обратно к TrustedInstaller

Иногда, чтобы исправить проблему, вам может потребоваться изменить файл данных например XML или ключ реестра принадлежит TrustedInstaller. Для этого вам сначала нужно стать владельцем файла, папки или ключ реестра.

После изменения файлов или настроек вам необходимо вернуть право собственности на Доверенный установщик, если предыдущим или первоначальным владельцем был TrustedInstaller. Чтобы вернуть право собственности на TrustedInstaller, выполните следующие действия:

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

  1. Щелкните правой кнопкой мыши файл или раздел реестра и выберите "Разрешения".
  2. Нажмите «Дополнительно», чтобы открыть диалоговое окно «Дополнительные параметры безопасности».
  3. Рядом с «Владелец:» нажмите «Изменить».
  4. В диалоговом окне «Выбор пользователя или группы» введите «NT СЕРВИС \ TrustedInstaller”И нажмите ENTER.
    взять на себя ответственность за файл
  5. Нажмите Применить, ОК.
    взять на себя ответственность за файл

При этом изменяется право собственности на объект (файл, папка или ключ реестра) в TrustedInstaller или Windows Modules Installer.

СВЯЗАННЫЙ:Станьте владельцем ключа реестра и назначьте разрешения с помощью командной строки

Использование команды icacls.exe для установки TrustedInstaller в качестве владельца файла

В окне командной строки администратора используйте следующий синтаксис командной строки:

icacls "путь \ имя файла" / setowner "NT Service \ TrustedInstaller"

Пример:

icacls "C: \ Windows \ PolicyDefinitions \ WindowsStore.admx" / setowner "NT Service \ TrustedInstaller"

TrustedInstaller теперь владеет файлом WindowsStore.admx.


В доступе icacls / setowner отказано?

Иногда icacls.exe / setowner в командной строке может возникнуть следующая ошибка:

имя файла: Доступ запрещен. Успешно обработано 0 файлов; Не удалось обработать 1 файл

Это может произойти при обнаружении жесткой ссылки NTFS. Ошибка обычно появляется, когда вы пытаетесь изменить владельца защищенных файлов в каталоге Windows, например, C: \ Windows \ Notepad.exe. А жесткая ссылка - это представление файла в файловой системе, в котором несколько путей ссылаются на один файл в одном томе.

Например, в файлах Notepad.exe есть два жестко связанных файла, которые можно просмотреть с помощью следующей команды:

fsutil.exe список жестких ссылок C: \ Windows \ notepad.exe
fsutil список жестких ссылок notepad.exe

Вы можете видеть, что Notepad.exe жестко связан со следующими файлами:

C: \ Windows \ System32 \ Notepad.exe. C: \\ Windows \ WinSxS \ amd64_microsoft-windows-notepad_31bf3856ad364e35_10.0.19041.488_none_4cea9379ceedab35 \ notepad.exe

В icacls.exe / setowner команда встречает ДОСТУП ЗАКРЫТ ошибка при обработке этих жестких ссылок.

Обратите внимание, что в документации icacls.exe говорится: «Этот параметр не вызывает смены владельца; используйте для этого служебную программу takeown.exe ».

Если вы столкнулись с ошибкой «Доступ запрещен» при настройке владения с помощью Icacls, возможно, вам придется полагаться на Takeown.exe, SubInACL или стороннюю служебную программу SetACL.exe (см. Следующий абзац).


Использование SetACL.exe для получения права собственности и назначения разрешений

SetACL.exe - это сторонний инструмент командной строки (от HelgeKlein.com), который мы рассмотрели до.

SetACL: аргументы командной строки

Прежде чем продолжить, давайте посмотрим на синтаксис командной строки для изменения прав собственности и прав доступа к файлу / реестру с помощью SetACL.

SetACL -on имя объекта -ot тип объекта -actn действие
  • -на: Укажите путь к объекту, с которым должна работать SetACL (например, к файлу, ключу реестра, общему сетевому ресурсу, службе или принтеру).
  • -от: Укажите тип объекта. Чтобы изменить владельца или разрешения для файла или папки, используйте тип объекта файл. Для ключей реестра используйте тип объекта рег
  • -actn: Укажите действие, которое должен делать SetACL с указанным объектом. Чтобы стать владельцем, установите действие как владелец. Чтобы изменить разрешения, установите действие как туз.
  • -ownr: Укажите имя или SID доверенного лица (пользователя или группы) в этом формате - например, "n: администраторы"

(Видеть Документация SetACL полный список объектов, типов и поддерживаемых действий.)

Вот несколько примеров, чтобы сменить владельца и предоставить разрешение на полный контроль:

Примеры: изменение владельца отдельного файла или папки:

setacl.exe -on c: \ windows \ notepad.exe -ot file -actn setowner -ownr "n: NT Service \ TrustedInstaller" setacl.exe -on c: \ windows \ notepad.exe -ot file -actn setowner -ownr "n: Администраторы" setacl.exe -on c: \ windows \ notepad.exe -ot file -actn setowner -ownr "n: John" setacl.exe -on "d: \ test" -ot file -actn setowner -ownr "n: Служба NT \Доверенный установщик" setacl.exe -on "d: \ test" -ot file -actn setowner -ownr "n: Администраторы" setacl.exe -on "d: \ test" -ot file -actn setowner -ownr "n: John"

Примеры: рекурсивное изменение владения:

Опция 1: Чтобы установить владельца папки и ее подпапок (не для файлов) рекурсивно, используйте один из этих примеров:

setacl.exe -on d: \ test -ot file -actn setowner -ownr "n: NT Service \ TrustedInstaller" -rec cont. setacl.exe -on d: \ test -ot file -actn setowner -ownr "n: Администраторы" -rec продолжение. setacl.exe -on d: \ test -ot file -actn setowner -ownr "n: Ramesh" -rec cont
  • -rec - рекурсия включена.
  • продолжение - Рекурсия и обработка только каталогов.

Вариант 2: Чтобы установить право собственности на файлы в папке и ее подпапках (не папки) рекурсивно, используйте один из этих примеров:

setacl.exe -on d: \ test -ot file -actn setowner -ownr "n: NT Service \ TrustedInstaller" -rec obj. setacl.exe -on d: \ test -ot file -actn setowner -ownr "n: администраторы" -rec obj. setacl.exe -on d: \ test -ot file -actn setowner -ownr "n: Ramesh" -rec obj
  • -rec - рекурсия включена.
  • объект - Рекурсия и обработка только файлов.

Вариант 3: Чтобы установить право собственности на папка, ее подпапки и файлы рекурсивно используйте один из этих примеров:

setacl.exe -on d: \ test -ot file -actn setowner -ownr "n: NT Service \ TrustedInstaller" -rec cont_obj. setacl.exe -on d: \ test -ot file -actn setowner -ownr "n: администраторы" -rec cont_obj. setacl.exe -on d: \ test -ot file -actn setowner -ownr "n: Ramesh" -rec cont_obj
  • -rec - рекурсия включена.
  • cont_obj - Рекурсия и обработка каталогов и файлов.

Примеры: Назначьте необходимые разрешения для файла или папки:

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

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

setacl.exe -on "d: \ test \ sample.xlsx" -ot file -actn ace -ace "n: Администраторы; p: полный " setacl.exe -on "d: \ test \ sample.xlsx" -ot file -actn ace -ace "n: John; p: full "setacl.exe -on" d: \ test "-ot file -actn ace -ace" n: Администраторы; p: полный " setacl.exe -on "d: \ test" -ot file -actn ace -ace "n: John; p: полный "

Примеры: рекурсивно назначьте необходимые разрешения:

Опция 1: Для папка и подпапки (не файлы) рекурсивно, используйте один из следующих примеров:

setacl.exe -on "d: \ test" -ot file -actn ace -ace "n: Администраторы; p: full "-rec продолжение. setacl.exe -on "d: \ test" -ot file -actn ace -ace "n: John; p: full "-rec продолжение
  • -rec - рекурсия включена.
  • продолжение - Рекурсия и обработка только каталогов.

Вариант 2: Для файлов в папке и подпапках (не папки) рекурсивно, используйте один из этих примеров:

setacl.exe -on "d: \ test" -ot file -actn ace -ace "n: Администраторы; p: full "-rec obj. setacl.exe -on "d: \ test" -ot file -actn ace -ace "n: John; p: full "-rec obj
  • -rec - рекурсия включена.
  • объект - Рекурсия и обработка только файлов.

Вариант 3: Для папка, ее подпапки и файлы рекурсивно используйте один из этих примеров:

setacl.exe -on "d: \ test" -ot file -actn ace -ace "n: Администраторы; p: full "-rec cont_obj. setacl.exe -on "d: \ test" -ot file -actn ace -ace "n: John; p: full "-rec cont_obj
  • -rec - рекурсия включена.
  • cont_obj - Рекурсия и обработка каталогов и файлов.

Вы можете ознакомиться с официальной документацией SetACL, чтобы узнать о его полных возможностях. Однако для установки прав собственности и прав доступа к файлам и папкам для большинства пользователей будет более чем достаточно takeown.exe и icacls.exe.


Одна небольшая просьба: если вам понравился этот пост, поделитесь, пожалуйста, этим?

Одна "крошечная" публикация от вас серьезно помогла бы росту этого блога. Несколько отличных предложений:
  • Приколи это!
  • Поделитесь этим в своем любимом блоге + Facebook, Reddit
  • Напишите об этом в Твиттере!
Так что большое спасибо за вашу поддержку, мой читатель. Это займет не более 10 секунд вашего времени. Кнопки «Поделиться» находятся прямо внизу. :)