Копирование файлов с сохранением прав доступа windows

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

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

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

Самый простой способ сохранить права доступа при копировании — воспользоваться Total Commander. Если вы не любите или боитесь работать в командной строке, то это ваш вариант. При копировании/переносе просто отметьте галочкой чекбокс «Copy NTFS permissions».

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

Команда XCOPY

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

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

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

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

  • параметр /Е — копирует каталоги с подкаталогами, включая пустые
  • параметр /О — копирует сведения о владельце и ACL

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

ICACLS

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

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

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

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

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

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

Копирование файлов и папок с сохранением прав

Для копирования файлов и папок (в том числе по сети) с сохранением прав, в Windows имеется встроенная программа Robocopy. Использовать данную программу довольно просто, достаточно в командной строке написать:

robocopy \\computer\src c:\dst /e /zb /copyall /w:5

Справку по синтаксису и параметрам, можно посмотреть прямо в командной строке. Но есть следующие интересные моменты:
/Z — включает поддержку докачки, без которой, в случае обрыва связи при копировании через сеть, хэш-сумма скопированного файла может не сойтись с источником;
/M — копирует файлы с атрибутом «Архивный» и сбрасывает его, т.е. копирует только файлы, которые были изменены, и чтобы не измененные файлы в следующий раз не копировать, сбрасывает атрибут «Архивный»;
/B — копирует файлы, для которых NTFS разрешения для данного пользователя отсутствуют (при этом пользователь должен быть либо в группе Администраторы, либо в группе Операторы архива);
/sec — копирует только основную информацию о файлах (Данные, Атрибуты, Метки времени),
/copyall — копирует всю информацию о файлах (Данные, Атрибуты, Метки времени, Список контроля доступа NTFS (ACL), Сведения о владельце, Сведения аудита);
параметры /R и /W лучше всегда задавать вручную, так как по умолчанию они очень велики, и в процессе копирования, robocopy может просто надолго застрять на каком-либо файле.

Читайте также:  Windows vps хостинг что это

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

Для отправки комментария вам необходимо авторизоваться.

Обработка разрешений при копировании и перемещение файлов и папок

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

Исходная версия продукта: Windows 10 — все выпуски, Windows Server 2012 R2
Исходный номер КБ: 310316

Аннотация

В Microsoft Windows 2000, Windows Server 2003 и Windows XP можно использовать файловую систему FAT32 или файловую систему NTFS. При использовании NTFS можно предоставить разрешения для папок и файлов для управления доступом к этим объектам. При копировании или перемещении файла или папки в томе NTFS способ обработки разрешений для объекта в проводнике Windows зависит от того, копируется ли объект или перемещается в том же томе NTFS или другом томе.

Дополнительные сведения

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

Кроме того, обратите внимание на следующие правила:

Группе «Все» предоставлены разрешения на полный доступ к корню каждого диска NTFS.

Запрет разрешений всегда имеет приоритет над разрешениями «Разрешить».

Явные разрешения имеют приоритет над унаследованных разрешений.

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

Разрешения являются накопительными.

Чтобы сохранить разрешения при копировании или перемещении файлов и папок, используйте Xcopy.exe с этим или /O /X переключателем.

Исходные разрешения объекта будут добавлены к наследуемым разрешениям в новом расположении.

Чтобы добавить исходные разрешения объекта к наследуемым разрешениям при копировании или перемещение объекта, используйте с помощью Xcopy.exe с ними -O -X и коммутаторами.

Чтобы сохранить существующие разрешения, не добавляя наследуемые разрешения из родительской папки, используйте Robocopy.exe, доступную в комплекте ресурсов Windows 2000.

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

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

Нажмите кнопку «Начните», нажмите кнопку «Выполнить», введите regedit в поле «Открыть» и нажмите ввод.

Найдите и щелкните ключ HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer реестра:

В меню «Правка» нажмите кнопку «Добавить значение» и добавьте следующее значение реестра:

  • Имя значения: ForceCopyAclwithFile
  • Тип данных: DWORD
  • Значение: 1

Закройте редактор реестра.

Вы можете изменить то, как проводник Windows обрабатывает разрешения при перемещении объектов в том же томе NTFS. Как уже упоминалось, при перемещении объекта в том же томе объект по умолчанию сохраняет свои разрешения. Однако если вы хотите изменить это поведение так, чтобы объект наследовал разрешения от родительской папки, измените реестр следующим образом:

Читайте также:  Операционная система линукс использование

Нажмите кнопку «Начните», нажмите кнопку «Выполнить», введите regedit и нажмите ввод.

Найдите и щелкните подкомедие HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer реестра:

В меню «Правка» нажмите кнопку «Добавить значение» и добавьте следующее значение реестра:

  • Имя значения: MoveSecurityAttributes
  • Тип данных: DWORD
  • Значение: 0

Закройте редактор реестра.

Убедитесь, что учетная запись пользователя, используемая для перемещения объекта, имеет набор разрешений «Изменение разрешений». Если разрешение не задано, предоставление разрешения на изменение разрешений для учетной записи пользователя.

Значение реестра MoveSecurityAttributes применяется только к Windows XP и Windows Server 2003. Это значение не влияет на Windows 2000.

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

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

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

Самый простой способ сохранить права доступа при копировании — воспользоваться Total Commander. Если вы не любите или боитесь работать в командной строке, то это ваш вариант. При копировании/переносе просто отметьте галочкой чекбокс «Copy NTFS permissions».

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

Команда XCOPY

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

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

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

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

  • параметр /Е — копирует каталоги с подкаталогами, включая пустые
  • параметр /О — копирует сведения о владельце и ACL

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

ICACLS

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

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

icacls c:\каталог /save name /t

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

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

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

ЕСЛИ СЧИТАЕТЕ СТАТЬЮ ПОЛЕЗНОЙ,
НЕ ЛЕНИТЕСЬ СТАВИТЬ ЛАЙКИ И ДЕЛИТЬСЯ С ДРУЗЬЯМИ.

Права доступа при копировании и перемещении файлов и папок.

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

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

При операции копировании папок или файлов из папки в папку, или из раздела в раздел, права доступа к ним меняются. Права доступа к файловой системе NTFS при копировании файлов/папок изменяются так:

  • При копировании файла/папки в одном NTFS разделе, копия папки/файла наследует права доступа папки назначения.
  • При копировании файла/папки в другой NTFS раздел, её копия наследует права доступа папки назначения.
  • При копировании файла/папки не в NTFS раздел, например, в раздел FAT, их копия теряет права доступа к файловой системе NTFS потому, что не NTFS разделы не поддерживают эти права доступа.

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

Перемещение файлов и папок.

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

  • При перемещении файла/папки в NTFS раздел, они наследуют права доступа новой родительской папки. Если на файл/папку заданы прямые права доступа, эти права сохраняются в дополнение к недавно унаследованным правам.

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

  • При перемещении файла/папки в другой NTFS раздел, они наследуют права доступа папки назначения. При перемещении файла/папки между разделами, Windows 7 копирует папку/файл в новое место и затем удаляет его из старого местоположения.
  • При перемещении файла/папки на не NTFS раздел, они теряют свои права доступа к файловой системе NTFS, потому что не NTFS разделы не поддерживают такие права доступа.

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

Действующие права доступа.

На каждый файл/папку установлены права доступа для пользователя и группы пользователей. Windows 7 определяет действующие права доступа на файл/папку путём объединения прав доступа пользователей и групп. Например, если пользователю установлены права на чтение, но он является членом группы с правами на изменение, действующие права пользователя станут — изменение.

Читайте также:  Как взломать windows по сети

При объединении прав доступа, установка «Запретить» имеет приоритет и переопределяет установку «Разрешить». Например, если группа имеет права на изменение в папке, а пользователю, который является членом этой группы, отказано в правах на изменение для этой же папки, то пользователю её изменять запрещено.

Функция действующих прав доступа.

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

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

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

Оцените статью