Скопировать права доступа ntfs в Total Commander

Обновлено: 21.11.2024

технология get-info -class | запись-вывод > /dev/web

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

Я работаю с клиентом, который переносит локальные центры обработки данных в облако, используя виртуальный центр обработки данных в Microsoft Azure. Одна из проблем, с которыми мы сталкиваемся, связана с размером томов на файловом сервере: максимальный размер диска Azure составляет 1023 ГБ, а к существующему серверу подключен LUN, размер которого превышает этот размер.

Один из моих коллег переместил данные (используя метод, сохраняющий разрешения), но созданные им папки верхнего уровня были новыми и унаследовали разрешения только от своего родителя. Наблюдая за тем, как он все больше и больше разочаровывается, вручную настраивая списки контроля доступа и сравнивая их в графическом интерфейсе проводника Windows, я подумал, что должен быть лучший способ.

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

Прежде всего экспортируйте разрешения из исходной папки с помощью команды icacls.exe:

icacls D:\data /save perms.txt [/t /c]

/c продолжает работу при ошибке; /t также для работы с подпапками

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

icacls D:\ /restore perms.txt

Но что, если исходная и целевая папки/файлы имеют разные имена? На это ответил Скотт Чемберлен в другом сообщении, в котором говорится, что я могу просто отредактировать файл perms.txt и изменить имя файла/папки перед каждым ACL.

Следуя этому, я смог экспортировать и повторно применить разрешения для нескольких папок за несколько минут. Определенно экономит время!

4 мысли о «Копировании разрешений NTFS из одной папки/файла в другой»

В настоящее время NTFS является популярным разрешением для файлов. Раньше у нас была FAT32, которая не позволяла копировать файлы размером более 4 ГБ. Так что это решение, но есть еще одна проблема, как скопировать разрешение NTFS при передаче файлов. Для этого я перепробовал множество программ и обнаружил, что одна или две из них хороши в том, что они говорят. Но мой друг посоветовал мне использовать GS Richcopy 360. За почти 6 месяцев использования могу сказать, что он лучший среди других. Попробуйте, надеюсь поможет!

ерунда Неверный параметр “[/t”

Gs RichCopy360 и Carbonite идеально подходят для копирования всех этих разрешений, поскольку оба имеют множество полезных функций.
Удачи

@Jim Fortosin — есть вежливый способ попросить о помощи, а есть еще звонок в BS, из-за которого ваш комментарий был перемещен в корзину на некоторое время, пока я не понял, о чем вы говорите.

[] довольно стандартен для указания необязательных параметров в тексте справки. Удалите [, и вы обнаружите, что это работает.

Оставить ответ Отменить ответ

Этот сайт использует Akismet для уменьшения количества спама. Узнайте, как обрабатываются данные ваших комментариев.

Категории

Архивы

Награды

Рефералы

Я удалил рекламу с сайта, но пользуюсь этими услугами и рекомендую их другим:

Копирование файлов/папок с разрешениями NTFS (с использованием TC 8.01)

tmx1 Junior Member
Сообщений: 3 Присоединился: 28 сентября 2009 г., 17:58 UTC

Копирование файлов/папок с разрешениями NTFS (с использованием TC 8.01)

Я пытаюсь скопировать файлы и папки из пути UNC на другой сервер в том же домене с разрешениями NTFS, установленными в настоящее время на исходном файловом сервере.

Может ли кто-нибудь указать мне правильное направление относительно того, что мне нужно делать?

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

Есть ли какие-то параметры, которые мне нужно изменить в TC 8.01, чтобы это работало?

Примечание.
Исходный сервер = Windows Server 2003
Целевой сервер = Windows Server 2012

tmx1 Junior Member
Сообщений: 3 Присоединился: 28 сентября 2009 г., 17:58 UTC

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

Phred Senior Member
Сообщений: 350 Присоединился: 16.06.2009, 15:24 UTC Местоположение: SEAu

Где установить.

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

ZoSTeR Power Member
Сообщений: 932 Присоединился: 29 июля 2004 г., 11:00 UTC

Помимо отсутствующего параметра, зачем копировать разрешения по умолчанию? Это испортит ваше наследование разрешений NTFS повсюду.

Phred Senior Member
Сообщений: 350 Присоединился: 16.06.2009, 15:24 UTC Местоположение: SEAu

Абсолютно положительные разрешения

Ну да, Зостер, но только при определенных обстоятельствах.
Наконец-то я пытаюсь перейти от хранения данных на системном диске к размещению их на отдельном диске. Итак, я создаю ветку M:\Users, ниже которой:
..\Phred\Documents\
..\Phred\Downloads\
и т. д.
. а также:
..\SignificantOther\Documents\
..\SignificantOther\Downloads\
etc
..\LessSignificantMinors\Documents\
..\LessSignificantMinors \Загрузки\
и т.д.
Хотя я могу потерять наследство, по крайней мере, их ограничительные разрешения будут перенесены из источника.

Я точно не знаю, как я буду управлять программными данными и программными данными.
Хотя я ожидаю перевода Outlook.pst из
C:\Users\Phred\AppData\Local\Microsoft\Outlook\
в
M:\Users\Phred\AppData \Local\Microsoft\Outlook\
будет работать, подчиненные данные для Outlook и всех других программ по-прежнему будут находиться на диске C:, system,. Но это не входит в ваш вопрос. Хоуп ответила.

Обычно каждая папка C:\Users\SomeUser имеет полные права доступа для SomeUser и для группы Администраторы.
Поэтому, если вы установите аналогичные разрешения для папки M:\Users\SomeUser, все внутренние файлы/папки просто наследуют эти разрешения, как в C:\Users\SomeUser. эм>.

Только разрешения, которые вы явно установили для некоторых файлов/папок, должны быть скопированы явно (опять же, если вы скопируете разрешения для папки, все внутренние файлы наследуют их). Итак, позвольте задать вам вопрос: как часто вы устанавливаете разрешения явно?

Phred Senior Member
Сообщений: 350 Присоединился: 16.06.2009, 15:24 UTC Местоположение: SEAu

Если бы только

MVV пишет: Обычно каждая папка C:\Users\SomeUser имеет полные права доступа для SomeUser и для группы Администраторы.
Поэтому, если вы установите аналогичные разрешения для папки M:\Users\SomeUser, все внутренние файлы/папки просто наследуют эти разрешения, как в C:\Users\SomeUser. эм>.

Да, MVV, я согласен, что так и должно быть, но у меня было ужасное время, когда он работал так просто у меня. Часто у меня есть одноранговая локальная сеть, противоречащая настройкам, обычно потому, что каждый особенно часто неточен, и папки и файлы принадлежат СИСТЕМЕ иногда, ИЗВЕСТНОМУ УСТАНОВЩИКУ (?) в других и т. д. Я стараюсь полагаться при стекании наследования папок, но это не всегда работает. : (

MVV пишет: Только разрешения, которые вы явно установили для некоторых файлов/папок, должны быть скопированы явно (опять же, если вы скопируете разрешения для папки, все внутренние файлы наследуют их). Итак, позвольте задать вам вопрос: как часто вы устанавливаете разрешения явно?

Я вижу, что параметр "включено" по умолчанию может использоваться нечасто, но это обычная функция наших графических интерфейсов.
Я могу быть нервным человеком, может быть, осторожным, но я практикую постепенность. Я воспринимаю вещи медленно и, следовательно, повторяюсь. Я рекомендую подход. За последние несколько дней я скопировал большое количество папок как с помощью FastCopy, так и с помощью TC, и я признаю, что мне нравится параметр ACL FastCopy и его функция вывода списка: я обнаружил ряд файлов, которые были бы полной неприятностью, если бы они был скопирован. Так что шаг за шагом, затем еще один... затем немного больше... это полезный метод, ИМХО.

Я обнаружил любопытную особенность TC: когда я просматривал папки с скопированными разрешениями NTFS или ACL, при проверке результата поведение менялось. Нажатие Enter в неразрешенной папке было отклонено в графическом интерфейсе, но при просмотре с помощью раскрывающегося пути «хлебных крошек» (?) вход был возможен. Никаких файлов не было видно, но разрешение на вход было дано. Я надеюсь, что это тривиальная разница. Я просканирую форум.

Поэтому, как и в случае с хорошим приложением с графическим интерфейсом, приветствуется устанавливаемое по умолчанию значение "Копировать разрешения NTFS".

Вы можете настроить FastCopy для копирования и удаления.
http://ipmsg.org/tools/fastcopy.html.en
Здесь моя строка копирования:
C:\Tools\FastCopy\FastCopy.exe /auto_close /open_window /cmd=update /estimate %ActivSel% /to="% InactivDir%"
А вот и Move:
:\Tools\FastCopy\FastCopy.exe /auto_close /open_window /cmd=move /estimate %ActivSel% /to="%InactivDir%"

Добавьте переключатель /acl для списков ACL NTFS

Windows 11 Домашняя x64 версии 21H2 (сборка ОС 22000.556)
Все версии 1.5.0.1305a (x64)
FreeCommander XE 2022 Build 866 64-битный донор

Это копирует содержимое каталога, а не сам каталог
upd: это работает, но не копирует права NTFS
C:\Users\root\Desktop\FastCopy211\FastCopy.exe /acl /auto_close / open_window /cmd=update /estimate %ActivSel% /to="%InactivDir%\"
upd2: я должен запустить FC с правами администратора

upd3: Отсутствие диалога перезаписи убивает всю красоту

Итак, запрос функции по-прежнему сохраняется.

emoxam написал: Это копирует содержимое каталога, а не сам каталог
upd: это работает, но не копирует права NTFS
C:\Users\root\Desktop\FastCopy211\FastCopy.exe /acl /auto_close /open_window /cmd=update /estimate %ActivSel% /to="%InactivDir%\"
upd2: я должен запустить FC с правами администратора

upd3: Отсутствие диалога перезаписи убивает всю красоту

Итак, запрос функции по-прежнему сохраняется.

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

Windows 11 Домашняя x64 версии 21H2 (сборка ОС 22000.556)
Все версии 1.5.0.1305a (x64)
FreeCommander XE 2022 Build 866 64-битный донор

Я хочу перезаписать диалоговое окно. Не хочется переключать режим перед каждым процессом копирования/перемещения, не удобно.
Я хочу, чтобы файловый менеджер спрашивал меня, что я хочу сделать, перезаписать или нет? Только старше или все.
Почему мое желание тебя удивляет? Является ли FC первым файловым менеджером, который вы используете? Потому что поведение, о котором я говорю, знакомо и используется в каждом файловом менеджере, я думаю.

emoxam написал: Я хочу перезаписать диалог. Не хочется переключать режим перед каждым процессом копирования/перемещения, не удобно.
Я хочу, чтобы файловый менеджер спрашивал меня, что я хочу сделать, перезаписать или нет? Только старше или все.
Почему мое желание тебя удивляет? Является ли FC первым файловым менеджером, который вы используете? Потому что поведение, о котором я говорю, знакомо и используется в каждом файловом менеджере, я думаю.

Нет, я не удивлен, но у каждого пользователя свое поведение при копировании/перемещении файлов.
Обычно я использую зарегистрированный Total Commander, у которого нет проблем с копированием ACL NTFS.
Я использую FC (в качестве донора) только для того, чтобы посмотреть, что предоставляют бесплатные файловые менеджеры.

Windows 11 Домашняя x64 версии 21H2 (сборка ОС 22000.556)
Все версии 1.5.0.1305a (x64)
FreeCommander XE 2022 Build 866 64-битный донор

Поэтому я не хочу покупать TC (это слишком дорого для файлового менеджера), и последняя функция, которая мне нужна, это разрешения NTFS. Печально, что даже в донорской версии нет этой фичи. Я в замешательстве.

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

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

Копирование файла или папки влияет на разрешения NTFS следующим образом:

■ При копировании папки или файла в один раздел NTFS копия папки или файла наследует разрешения папки назначения.

■ При копировании папки или файла в другой раздел NTFS копия папки или файла наследует разрешения папки назначения.

■ При копировании папки или файла в раздел, отличный от NTFS, например в раздел FAT, копия папки или файла теряет свои разрешения NTFS, поскольку разделы, отличные от NTFS, не поддерживают разрешения NTFS.

Последствия перемещения файлов Для копирования файлов и папок в пределах одного раздела NTFS или между разделами NTFS и fo|dere необходимо иметь разрешение на чтение для исходной папки и разрешение на запись для папки назначения.

При перемещении файла или папки разрешения могут измениться в зависимости от разрешений папки назначения. Перемещение файла или папки влияет на разрешения NTFS следующим образом:

■ При перемещении папки или файла в разделе NTFS папка или файл сохраняют исходные разрешения.

■ При перемещении папки или файла в другой раздел NTFS эта папка или файл наследует разрешения папки назначения.Когда вы перемещаете папку или файл между разделами, Windows Server 2003 копирует папку или файл в новое место, а затем удаляет его из старого места.

■ При перемещении папки или файла в раздел, отличный от NTFS, папка или файл теряют свои разрешения NTFS, поскольку разделы, отличные от NTFS, не поддерживают разрешения NTFS.

Эффекты копирования и перемещения внутри томов

Чтобы перемещать файлы и папки в пределах раздела NTFS или между разделами NTFS, необходимо иметь разрешение на запись для папки назначения и разрешение на изменение исходной папки или файла. Разрешение на изменение требуется для перемещения папки или файла, поскольку Windows Server 2003 удаляет папку или файл из исходной папки после копирования в папку назначения.

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

Копировать файл или папку внутри тома Перемещать файл или папку внутри тома Копировать файл или папку между томами Перемещать файл или папку между томами

Вы можете использовать встроенный инструмент iCACLS для управления разрешениями NTFS в Windows. Инструмент командной строки icacls.exe позволяет получать или изменять списки контроля доступа (ACL) для файлов и папок в файловой системе NTFS. В этой статье мы рассмотрим полезные команды для управления разрешениями NTFS в Windows с помощью iCACLS.

Использование iCACLS для просмотра и установки прав доступа к файлам и папкам

Текущие права доступа к любому объекту на томе NTFS могут отображаться следующим образом:

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

Права наследования указываются перед разрешениями на доступ (права наследования применяются только к папкам):

  • (OI) – наследование объекта
  • (CI) – наследование контейнера
  • (IO) – только наследование
  • (I) – наследование разрешений от родительского контейнера

С помощью icacls вы можете изменить права доступа к папке.

Чтобы предоставить группе «resource\mun-fs01_Auditors» разрешения на чтение и выполнение (RX) в папке:

icacls 'C:\Share\Veteran\' /grant resource\mun-fs01_Auditors:RX

Чтобы удалить группу из ACL каталога:

icacls 'C:\Share\Veteran\' /remove resource\mun-fs01_Auditors

С помощью icacls вы можете включить наследование разрешений NTFS из родительской папки:

icacls 'C:\Share\Veteran\' /inheritance:e

Или отключите наследование, удалив все унаследованные записи ACE:

icacls 'C:\Share\Veteran\' /inheritance:r

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

icacls 'C:\Share\Veteran\' /setowner resource\j.smith /T /C /L /Q

Как сделать резервную копию (экспортировать) папку с разрешениями NTFS?

Прежде чем вносить существенные изменения в разрешения (перемещение, обновление списков управления доступом, перенос ресурсов) в папку NTFS (или общую сетевую папку), рекомендуется создать резервную копию старых разрешений. Эта копия позволит вам вернуться к первоначальным настройкам или хотя бы уточнить старые разрешения для определенного файла/каталога.

Вы можете использовать инструмент icacls.exe для экспорта/импорта текущих разрешений каталога NTFS. Чтобы получить все ACL для определенной папки (включая подкаталоги и файлы) и экспортировать их в текстовый файл, выполните следующую команду:

icacls g:\veteran /save c:\backup\veteran_ntfs_perms.txt /t /c

Примечание. Ключ /t используется для получения ACL для всех подкаталогов и файлов, /c позволяет игнорировать ошибки доступа. Добавив параметр /q, вы можете отключить отображение информации об успешном доступе к объектам файловой системы.

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

Откройте файл veteran_ntfs_perms.txt с помощью любого текстового редактора. Как видите, он содержит полный список файлов и папок в каталоге, и каждый элемент имеет текущие разрешения, указанные в формате SDDL (язык определения дескрипторов безопасности).

Например, текущие разрешения NTFS для корня папки следующие:

Эта строка описывает доступ для некоторых групп или пользователей. Мы не будем подробно рассматривать синтаксис SDDL (формат SDDL кратко обсуждался в статье «Как просмотреть и изменить разрешения службы в Windows?»). Давайте сосредоточимся на небольшой части SDDL, выбрав всего один объект:

A – тип доступа (Разрешить)

OICI — флаг наследования (OBJECT INHERIT+ CONTAINER INHERIT)

FA — тип разрешения (SDDL_FILE_ALL — все разрешено)

S-1-5-21-2340243621-32346796122-2349433313-24109193 — SID учетной записи или доменной группы, для которой установлены разрешения. Чтобы преобразовать SID в имя учетной записи или группы, используйте следующую команду PowerShell:

$objSID = New-Object System.Security.Principal.SecurityIdentifier("S-1-5-21-2340243621-32346796122-2349433313-24109193")
$objUser = $objSID.Translate([System. Security.Principal.NTAccount])
$objUser.Value

Или используйте одну из команд:
Get-ADUser -Identity SID
или
Get-ADGroup -Identity SID

Таким образом, вы обнаружили, что пользователь corp\dvivar имеет права полного доступа к этому каталогу.

Как восстановить разрешения NTFS с помощью iCacls?

Вы можете восстановить разрешения NTFS для папки с помощью ранее созданного файла ветеран_нтфс_пермс.txt. Чтобы установить разрешения NTFS для объектов в каталоге в соответствии со значениями в файле резервной копии ACL, выполните следующую команду:

icacls g:\ /restore c:\backup\veteran_ntfs_perms.txt /t /c

Примечание. Обратите внимание, что при импорте разрешений из файла вместо имени папки следует указать путь к родительской директории.

После восстановления всех разрешений также будет отображаться статистика по количеству обработанных файлов.

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

Сброс разрешений NTFS до значений по умолчанию

Вы можете использовать инструмент icacls для сброса прав доступа к папке (а также к вложенным файлам и подкаталогам).

icacls C:\share\veteran /reset /T /Q /C

Эта команда активирует унаследованные разрешения NTFS для указанного объекта и удалит все другие ACL.

Копирование разрешений NTFS из одной папки в другую

Вы можете использовать текстовый файл с резервной копией ACL для копирования разрешений NTFS из одного каталога в другой.

Сначала создайте резервную копию разрешений NTFS для исходной папки:

icacls 'C:\Share\Veteran' /save C:\PS\save_ntfs_perms.txt /c

А затем примените сохраненные ACL к целевой папке:

icacls D:\Share /restore C:\PS\save_ntfs_perms.txt /c

Это будет работать, если исходная и целевая папки имеют одинаковые имена. Что делать, если имя целевой папки отличается? Например, вам нужно скопировать разрешения NTFS в папку D:\PublicDOCS.

Самый простой способ — открыть файл save_ntfs_perms.txt в блокноте и изменить имя папки. Используйте функцию «Заменить», чтобы заменить имя ветерана на PublicDOCS.

Затем импортируйте разрешения NTFS из файла и примените их к целевой папке:

Читайте также: