как скопировать папку с сохранением прав доступа

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

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

Просмотр и изменения NTFS прав на папки и файлы с помощью icacls

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

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

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

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

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

Чтобы предоставить группе fs01_Auditors домена resource права чтения и выполнения (RX) на каталог, выполните:

icacls ‘C:\Share\Veteran\’ /grant resource\fs01_Auditors:RX

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

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

icacls ‘C:\Share\Veteran\’ /remove resource\fs01_Auditors

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

icacls ‘C:\Share\Veteran\’ /inheritance:e

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

Или отключить наследование с удалением всех наследованных ACEs:

icacls ‘C:\Share\Veteran\’ /inheritance:r

Также icacls можно использовать, чтобы изменить владельца файла или каталога:

icacls ‘C:\Share\Veteran\’ /setowner resource\a.ivanov /T /C /L /Q

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

Бэкап (экспорт) текущих NTFS разрешений каталога

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

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

icacls ‘C:\Share\Veteran’ /save c:\ps\veteran_ntfs_perms.txt /t /c

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

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

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

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

К примеру, текущие NTFS разрешения на корень папки такие:

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

A – тип доступа (Allow)

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

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

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

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

Таким образом, мы узнали, что пользователь corp\dvivan обладал полными правами (Full Control) на данный каталог.

Восстановление NTFS разрешений с помощью iCacls

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

icacls C:\share /restore c:\PS\veteran_ntfs_perms.txt /t /c

По окончанию восстановления разрешений также отобразится статистика о количестве обработанных файлов:

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

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

Сброс NTFS разрешений в Windows

С помощью утилиты icacls вы можете сбросить текущие разрешения на указанный файл или каталог (и любые вложенные объекты):

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

Данная команда включит для указанного объекта наследование NTFS разрешений с родительского каталога, и удалит любые другие права.

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

Копирование NTFS прав между папками

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

Сначала создайте бэкап NTFS разрешений корня папки:

icacls ‘C:\Share\Veteran’ /save c:\ps\save_ntfs_perms.txt /c

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

icacls e:\share /restore c:\ps\save_ntfs_perms.txt /c

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

Проще всего открыть файл save_ntfs_perms.txt в блокноте и отредактировать имя каталога. С помощью функции Replace замените имя каталога Veteran на PublicDOCS.

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

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

icacls e:\ /restore c:\ps\save_ntfs_perms.txt /c

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

Если не нужно специальных «извращений» с правами, то можно воспользоваться и предыдущей, более простой и удобной утилитой — cacls.exe, которая все еще входит в состав Windows

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

Возможно ее вывод разрешений и проще чем у icacls, но вот экспорт, импорт разрешений и рекурсию она все же не поддерживает.

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

И да, я же написал
«Если не нужно специальных «извращений» с правами»

cacls.exe освоить в разы проще/ Правд. если дружишь с правильным текстовым редактором, а не с ГУЁвым.
Экспорт/Импорт — в чем проблема?
Экспорт — переадресация вывода в файл
Импорт — запуск bat-ника после обработки в FAR (любом редакторе с макросами)

Правда сегодняшние «новички» они все больше «мышиные» (ГУЁ-вые) пользователи 🙂 А не админы 🙂

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

Админ обязан уметь писать батники любой сложности.
А уж из регулярной структуры, которую выдает cacls, слепить батник в FAR’е, с использованием макросов, проще простого

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

Спасибо за статью.
Вопрос — прокатал процедуру на одном из своих фс. из 1,5 млн. файлов около 1600 в ошибке. Как можно узнать что это за файлы?

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

Утилита ICACLS выводит довольно подробный лог. Добавьте атрибут /q (не будут выводится сообщения об успешных операциях) и перенаправьте вывод в текстовый файл:
icacls D:\Share /save c:\ps\share_ntfs_perms.txt /t /c /q >>c:\ps\icacls.log

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

А что если путь к файлу превышает 256 символов, как обойти ограничение?

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

Строить фалйовое хранилище на Windows 10 …. О! Это что-то запредельное 🙂 Поэтому отключили там ограничение или нет, не так существенно. 🙂

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

Жаль у icacls не хватает одного ключа. Сохранять разрешения только для папок. Файлы, то так и так вложенные получать теже самые разрешения, что и у их папки. Я не быру в расчет «странные» разрешения на файл.папки внутри папки, отличные от нее самой (кроме прав на корневую)
А старый вариант cacls не умеет ходить по вложенным папкам.
В итоге выкручиваемся используя оба средства 🙂

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

icacls не сохраняет ВЛАДЕЛЬЦЕВ, банально в SDDL-строках отсутствует O:S-1-……… как можно заметить, а при /restore тогда «Отказано в доступе!». А с cacls и подавно…

Когда в свойствах файла во вкладке Безопасность такое:
«У вас нет разрешения на просмотр текущих разрешений для этого объекта»;

Не удалось отобразить текущего владельца.

а так же в колонке «Владелец» (System.FileOwner или <9B174B34-40FF-11D2-A27E-00C04FC30871>,4) проводника пустое значение напротив объекта — короче говоря, нет прав READ_CONTROL (RC или 0x00020000) — придётся вслепую менять владельца (чтобы сохранить разрешения), если кнопка [Изменить] так же недоступна (даже icacls …… /grant *S-1-5-32-544:(RC) не удалось обработать ……
cacls …… /E /G Администраторы:F — Отказано в доступе).
А если [Изменить] разрешения всё-таки позволяет (не показывая владельца), то тут уже сразу сужается круг предположительного владельца.

Источник

Статья Сохранение разрешений NTFS при копировании или перемещении файлов

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

Dragokas

Very kind Developer

В файловой системе NTFS каждый объект (файл или папка) имеет свой список контроля доступа (Access Control List, ACL), в котором содержится информация о том, кто (или что) имеет доступ к объекту и какие операции разрешено (или запрещено) этому субъекту проводить над объектом. А что происходит с ACL при копировании или перемещении объекта? Попробуем это выяснить …

В качестве подопытного возьмем папку Temp в корне диска C. Откроем свойства папки и посмотрим ее разрешения. Как видите, в списке доступа есть только группа локальных администраторов и пользователь kirill (то есть я ).

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

Теперь возьмем нашу папку.

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

И помощью Проводника скопируем ее на компьютер SRV1, также в корень диска C.

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

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

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

Для того чтобы понять, откуда взялись новые разрешения, пройдем в дополнительные параметры безопасности папки (кнопка Advanced). Как видно из рисунка, все разрешения папки Temp унаследованы от диска С.

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

В этой ситуации нет ничего удивительного. По умолчанию разрешения NTFS сохраняются только при копировании\перемещении в пределах одного логического диска, или тома. Если же объект перемещается на другой диск того же (или другого) компьютера, то все разрешения заменяются наследуемыми от родительского объекта, которым в нашем случае и является диск C компьютера SRV1.

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

Источник

Сохранение разрешений NTFS на файлы и папки при копировании или перемещении

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

Файловая система NTFS с помощью списка контроля доступа (Access Control List, ACL) позволяет гибко организовывать и контролировать доступ к файлам и папкам в системе, раздавать разрешения пользователям или другим объектам. Однако при простом копировании или перемещении объектов ACL разрешения теряются.

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

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

Команда XCOPY

XCOPY более продвинутый вариант команды COPY, но в отличие от последней умеет работать с сетевыми путями и копировать сведения о владельце и данные ACL объекта, то есть права доступа к файлам и папкам в системе NTFS. Синтаксис команды предельно простой:

xcopy источник [назначение] параметры

Допустим нам необходимо сделать резервную копию каталога баз данных 1С D:\bases1C на сетевой накопитель NAS с сохранением списков доступа. Вот как будет выглядеть соответствующая команда:

xcopy D:\bases1C \\NAS\backup1c /E /O

В большинстве случаев этих двух параметров достаточно, полный список можно посмотреть xcopy /?

ICACLS

Утилита ICACLS пришла на смену CACLS из Windows XP. Позволяет отображать и изменять списки управления доступом (Access Control Lists (ACLs) ) к файлам и папкам файловой системы, сохранять список доступа указанного объекта в файл и затем применить этот список к указанному объекту, то есть делать резервную копию прав доступа к объекту.

Приведу наиболее интересный пример использования ICACLS:

icacls c:\каталог /save name /t icacls c:\другой_каталог /restore name

Итак, первой командой ICACLS создаем резервную копию прав доступа указанного объекта и сохраняем его в файл с именем name. Второй командой применяем резервную копию для другого объекта. Таким образом можно существенно упростить процесс переноса прав доступа с одного каталога на другой.

Стоит отметить, что файл с правами доступа по умолчанию сохраняется в корневую папку активного пользователя. С полным списком возможностей утилиты можно ознакомиться введя команду icacls /?

Если считаете статью полезной,
не ленитесь ставить лайки и делиться с друзьями.

Источник

Использование Robocopy для синхронизации и резервного копирования файлов, примеры

Robocopy – это консольная утилита Windows для копирования файлов, которую можно использовать для синхронизации/репликации файлов и каталогов, и в сценариях резервного копирования. Robocopy (Robust File Copy) доступна начиная с Windows NT 4.0 Resource Kit, но по умолчанию эта функция появилась только в Windows Vista и Windows Server 2008. Robocopy заменяет Xcopy и copy, как более функциональная.

Основные возможности Robocopy

Кроме обычного копирования файлов и папок из папки источника в каталог назначения, в Robocopy есть множество очень полезных функций:

Официальной графической версии robocopy (c GUI) от Microsoft нет. Существуют пользовательские версии, но их поддержка прекращена. Список неофициальных GUI для robocopy (это сторонние программы):

Синтаксис и параметры robocopy

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

Синтаксис robocopy состоит из двух обязательных параметров (исходный и целевой каталог) и двух необязательных (фильтр файлов и параметры):

robocopy [фильтр файлов] [параметры]

Поддерживаются как локальные пути, так и UNC, например, \\server\directory

Полный синтаксис утилиты robocopy (все параметры и их описания) доступны по команде:

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

Поскольку ключей в robocopy много, мы будем рассматривать их на практике, в готовых командах. Мы не будем рассматривать самые простые примеры использования robocopy, т.к. обычно они не вызывают вопросов. Ниже представлены готовые к применению более сложные команды robocopy, которые можно использовать в реальных сценариях.

Использование robocopy для зеркалирования каталогов

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

robocopy \\testnode1\C$\source\ \\testnode2\c$\dest\ *.txt /MIR /COPYALL /Z /B /J /R:3 /W:1 /REG /TEE /LOG+:%appdata%\robocopy.log

Обратите внимание на ключ /Z даже если вы копируете небольшие файлы по устойчивому каналу. Он не несёт дополнительных расходов при использовании, но в случае обрыва, вы сможете продолжить копирование просто повторно запустив скрипт.

Инкрементальное копирование с помощью robocopy

Сам по себе robocopy не может полностью обеспечить инкрементальное резервное копирование каталога (копирование новых и измененных файлов), для этого мы будем использовать небольшой bat скрипт:

Инкрементальность осуществляется за счёт параметра /maxage:1 — файлы старше суток копироваться не будут. Для первого, “базового” копирования, можно выполнить этот скрипт без параметра /maxage.

Robocopy: перемещение файлов

С помощью ключа /mov или /move вы можете переместить файлы (а точнее удалить успешно скопированные файлы из исходной директории):

robocopy C:\source\ F:\dest\ /MOVE /E /COPYALL /Z /B /J /R:3 /W:1 /REG /TEE /LOG+:%appdata%\robocopy.log

Пример использование robocopy в планировщике задач

Для примера возьмём задачу: нам необходимо с помощью robocopy регулярно синхронизировать содержимое сетевой папки между двумя серверами с ведением логов.

Запустите командную строку с правами администратора и введите: compmgmt.msc

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

Выберите опцию Run whether user is logged on or not, для того чтобы задание выполнялось в фоновом режиме. Также отметьте Run with highest privileges. Эта опция сработает если аккаунт из-под которого выполняется задание, будет иметь права администратора.

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

Перейдите на вкладку Triggers и создайте новый триггер.

Выберите параметр On a schedule (по расписанию), выберите время начала и отметьте Repeat task every, указав интервал выполнения. В моём случае это 5 минут – каждые 5 минут, начиная с часа дня 22 апреля (обязательно измените эту дату на ту, которая нужна вам), директории будут синхронизированы. В for a duration of поставьте Indefinitely (бесконечно)

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

Перейдите во вкладку Actions и нажмите New

Содержание robocopy-mirror.bat:

Помимо журнала выполнения задания планировщика, robocopy будет писать собственный лог файл копирования в C:\robocopy.log. Если аккаунт из-под которого будет выполняться скрипт не имеет прав администратора, смените C:\robocopy.log на нужный вам путь.

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

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

Если вы всё настроили правильно, директории должны начать синхронизироваться. как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

Если у вас возникли проблемы с выполнением скрипта, то обязательно проверьте вкладку History вашей задачи

как скопировать папку с сохранением прав доступа. Смотреть фото как скопировать папку с сохранением прав доступа. Смотреть картинку как скопировать папку с сохранением прав доступа. Картинка про как скопировать папку с сохранением прав доступа. Фото как скопировать папку с сохранением прав доступа

Отслеживание изменений в каталогах с помощью robocopy

.bat скрипт для зеркалирования с отслеживанием изменений с интервалом в 1 минуту. Этот скрипт нужно запускать из-под аккаунта с правами администратора.

Плюсы:

Минусы:

Коды возврата (ошибки) robocopy

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

HexDecimalMeaning if set
0x000No errors occurred, and no copying was done. The source and destination directory trees are completely synchronized.
0x011One or more files were copied successfully (that is, new files have arrived).
0x022Some Extra files or directories were detected. No files were copied Examine the output log for details.
0x044Some Mismatched files or directories were detected. Examine the output log. Housekeeping might be required.
0x088Some files or directories could not be copied (copy errors occurred and the retry limit was exceeded). Check these errors further.
0x1016Serious error. Robocopy did not copy any files. Either a usage error or an error due to insufficient access privileges on the source or destination directories.
Коды возврата могут комбинироваться:
0x033(2+1) Some files were copied. Additional files were present. No failure was encountered.
0x055(4+1) Some files were copied. Some files were mismatched. No failure was encountered.
0x066(4+2) Additional files and mismatched files exist. No files were copied and no failures were encountered. This means that the files already exist in the destination directory
0x077(4+1+2) Files were copied, a file mismatch was present, and additional files were present.

Любое значение больше 7 говорит о том, что при копировании через robocopy возникла ошибка. Вы можете обрабатывать эти ошибки в bat файле:

if %ERRORLEVEL% EQU 16 echo ***FATAL ERROR*** & goto end
if %ERRORLEVEL% EQU 15 echo OKCOPY + FAIL + MISMATCHES + XTRA & goto end
if %ERRORLEVEL% EQU 14 echo FAIL + MISMATCHES + XTRA & goto end
if %ERRORLEVEL% EQU 13 echo OKCOPY + FAIL + MISMATCHES & goto end
if %ERRORLEVEL% EQU 12 echo FAIL + MISMATCHES& goto end
if %ERRORLEVEL% EQU 11 echo OKCOPY + FAIL + XTRA & goto end
if %ERRORLEVEL% EQU 10 echo FAIL + XTRA & goto end
if %ERRORLEVEL% EQU 9 echo OKCOPY + FAIL & goto end
if %ERRORLEVEL% EQU 8 echo FAIL & goto end
if %ERRORLEVEL% EQU 7 echo OKCOPY + MISMATCHES + XTRA & goto end
if %ERRORLEVEL% EQU 6 echo MISMATCHES + XTRA & goto end
if %ERRORLEVEL% EQU 5 echo OKCOPY + MISMATCHES & goto end
if %ERRORLEVEL% EQU 4 echo MISMATCHES & goto end
if %ERRORLEVEL% EQU 3 echo OKCOPY + XTRA & goto end
if %ERRORLEVEL% EQU 2 echo XTRA & goto end
if %ERRORLEVEL% EQU 1 echo OKCOPY & goto end
if %ERRORLEVEL% EQU 0 echo No Change & goto end
:end

Утилита robocopy имеет огромный функционал и позволяет гибко настроить операции копирования. Как альтернативу robocopy в PowerShell можно использовать командлет Copy-Item, который хоть и менее функционален, но работает с объектной моделью PowerShell, что может быть важно, если вы часто используете PowerShell или используете цепочки автоматизации с другими языками программирования.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *