Ваш надежный
хостинг партнер
(495) 797-8-500

8-800-700 40 36

У Вас нет выбранных услуг.



Новости компании, технические статьи

06.08.2015

Работа с разрешениями NTFS при копировании или перемещении файлов

Каждый объект в рамках файловой системы NTFS, будь то папка или файл, обладает собственным списком контроля доступа ALC (Access Controll List). Этот список содержит информацию о доступе к объекту, а также список запрещенных либо разрешенных операций, который конкретный субъект может над ним проводить. Но как ведет себя ALC при перемещении либо копировании объекта? Попытаемся прояснить ситуацию.

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

Теперь нужно взять нашу папку и с помощью проводника скопировать ее на машину SRV1 в корень C-диска.

1ntfs

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

2ntfs

Чтобы выяснить, откуда появились новые разрешения, потребуется перейти в дополнительные параметры директории при помощи кнопки «Advanced».

Разрешения, как мы можем увидеть на скриншоте ниже, были унаследованы из C-диска.

3ntfs

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

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

Используем утилиту Icacls

Предназначение данной утилиты – работа непосредственно с ACL . Кроме прочего она позволяет сохранять в файл список доступа указанных объектов с его последующим применением к указанным объектам.

Для сохранения ALC исходного каталога (Temp) и его содержимого в виде файлов и подкаталогов (выходной файл - tempACL) выполняем следующую команду в командной консоли:

Icacls C:\Temp\* /save tempACL /t

Icalcs по дефолту сохраняет этот файл в пользовательском профиле C:\Users\Пользователь.

Полученный файл tempACL мы можем перенести на машину SRV1 с его последующим использованием для восстановления Temp-каталога при помощи следующей команды:

Icacls C:\temp /restore C:\tempACL

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




Возврат к списку