Поделиться через


Сохранение списков управления доступом к файлам, атрибутов и меток времени с помощью диска Azure Data Box

Azure Диск Data Box позволяет сохранять списки управления доступом (ACL), метки времени и атрибуты файлов при отправке данных в Azure. В этой статье описаны метаданные, которые можно передать при копировании данных в Диск Data Box, чтобы передать их в Файлы Azure.

Перенесенные метаданные

Списки управления доступом, метки времени и атрибуты файла — это метаданные, передаваемые при передаче данных из Диск Data Box в Файлы Azure. В этой статье списки управления доступом, метки времени и атрибуты файлов называются метаданными коллективно.

Метаданные можно скопировать с помощью средств копирования данных Windows. Метаданные не сохраняются при передаче данных в хранилище BLOB-объектов.

В последующих разделах статьи подробно описывается, как метки времени, атрибуты файлов и списки управления доступом передаются при передаче данных из Диск Data Box в Файлы Azure.

Метки времени

Передаются следующие метки времени:

  • CreationTime
  • LastWriteTime

Следующая метка времени не передается:

  • LastAccessTime

Атрибуты файла

Атрибуты файлов как для файлов, так и для каталогов передаются, если не указано иное.

Передаются следующие атрибуты файла:

  • FILE_ATTRIBUTE_READONLY (только файл)
  • FILE_ATTRIBUTE_HIDDEN
  • FILE_ATTRIBUTE_SYSTEM
  • FILE_ATTRIBUTE_DIRECTORY (только в каталоге)
  • FILE_ATTRIBUTE_ARCHIVE
  • FILE_ATTRIBUTE_TEMPORARY (только файл)
  • FILE_ATTRIBUTE_NO_SCRUB_DATA

Следующие атрибуты файлов не передаются:

  • FILE_ATTRIBUTE_OFFLINE
  • FILE_ATTRIBUTE_NOT_CONTENT_INDEXED

Атрибуты только для чтения в каталогах не передаются.

Альтернативные потоки данных и расширенные атрибуты

Альтернативные потоки данных и расширенные атрибуты не поддерживаются в Файлы Azure, страничных BLOB-объектов или хранилище блочных BLOB-объектов, поэтому они не передаются при копировании данных.

списки управления доступом;

В зависимости от используемого метода передачи и использования клиента Windows или Linux некоторые или все списки управления доступом по умолчанию (ACL) для файлов и папок могут передаваться во время копирования данных в Файлы Azure.

Примечание.

Файлы с ACL, содержащими строки условных записей управления доступом (ACE), не копируются. Это известная проблема. Чтобы обойти это, скопируйте эти файлы в общий ресурс файлов Azure вручную, подключив общий ресурс, а затем используя инструмент копирования, поддерживающий копирование списков управления доступом.

Копирование данных и метаданных

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

Средство копирования данных Windows

Чтобы скопировать данные в Диск Data Box, используйте средство копирования файлов, напримерrobocopy. Следующая примерная команда копирует все файлы и каталоги, передавая метаданные вместе с данными.

robocopy <Source> <Target> * /copyall /e /dcopy:DAT /B /r:3 /w:60 /is /nfl /ndl /np /MT:32 or 64 /fft /log+:<LogFile>

где

Вариант Описание
/copyall Копирует все атрибуты.
/e Копирует подкаталоги, включая пустые каталоги.
/dcopy:DAT Копирует данные, атрибуты и метки времени. Примечание. Параметр /dcopy:DAT необходимо использовать для передачи CreationTime в каталогах.
/B Копирует файлы в режиме резервного копирования.
/r:3 Задает 3 попытки для неудачных копий.
/w:60 Задает время ожидания 60 секунд между повторными попытками.
/is Включает одни и те же файлы.
/nfl Не регистрирует имена файлов.
/ndl Не регистрирует имена каталогов.
/np Не отображает прогресс операции копирования.
/MT:32 or 64 Использует многопоточность с 32 или 64 потоками.
/fft Уменьшает детализацию отметок времени для любой файловой системы.
/log+:<LogFile> Добавление выходных данных в существующий файл журнала.

Дополнительные сведения об этих параметрах robocopy см. в разделе Учебное пособие. Копирование данных в Azure Data Box через SMB

Примечание.

Если вы используете /copyall для копирования данных, исходные списки ACL для каталогов и файлов передаются в службу Файлов Azure. Если у вас есть только доступ на чтение в исходных данных и не удалось изменить исходные данные, у вас будет доступ только для чтения данных в Диск Data Box. Используйте /copyall только в том случае, если планируется копировать все списки ACL для каталогов и файлов вместе с данными.

Использование robocopy для перечисления, копирования, изменения файлов на диске Data Box

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

  • Копирование только данных в Диск Data Box без списков управления доступом для каталогов и файлов

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

  • Копирование данных и списков управления доступом в каталоги и файлы в Диск Data Box

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

  • Перечисление файловой системы в Диск Data Box с помощью robocopy

    Используйте эту команду, чтобы получить список содержимого каталога:

    robocopy <source-dir> NULL /l /s /xx /njh /njs /fp /B

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

  • Копирование и удаление папок и файлов в Диск Data Box

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

    robocopy <source-dir> <destination-dir> <file-name> /B

    Используйте эту команду, чтобы удалить один файл:

    robocopy <source-dir> <destination-dir> <file-name> /purge /B

    В команде выше в <source-dir> не должен быть указан файл: <file-name>. Затем приведенная выше команда синхронизирует назначение с источником, что приводит к удалению файла из места назначения.

    Обратите внимание, что обозреватель файлов может не позволить выполнить указанные выше операции.

Дополнительные сведения см. в статье Использование команд Robocopy.

Средства копирования данных Linux

Перенос метаданных в Linux — это двухэтапный процесс. Сначала вы копируете исходные данные с помощью такого инструмента, как rsync, который не копирует метаданные. После копирования данных вы можете скопировать метаданные с помощью такого инструмента, как smbcacls или cifsacl.

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

cp -aR /etc /opt/ 
rsync -avP /etc /opt (-a copies a directory)

Следующие шаги