Preservando ACLs, atributos e carimbos de data/hora de arquivo com o Azure Data Box

O Azure Data Box permite preservar listas de controle de acesso (ACLs), carimbos de data/hora e atributos de arquivo ao enviar dados para o Azure. Este artigo descreve os metadados que você pode transferir ao copiar dados para o Data Box por meio do SMB (Server Message Block) para carregá-los nos Arquivos do Azure.

Metadados transferidos

ACLs, carimbos de data/hora e atributos de arquivo são os metadados que são transferidos quando os dados do Data Box são carregados nos Arquivos do Azure. Neste artigo, ACLs, carimbos de data/hora e atributos de arquivo são referidos coletivamente como metadados.

Os metadados podem ser copiados com ferramentas de cópia de dados Windows e Linux. Os metadados não são preservados ao transferir dados para o armazenamento de blobs. Os metadados também não são transferidos ao copiar dados por NFS.

As seções subsequentes do artigo discutem em detalhes como os carimbos de data/hora, atributos de arquivo e ACLs são transferidos quando os dados do Data Box são carregados nos Arquivos do Azure.

Carimbos de Data/Hora

Os seguintes carimbos de data/hora são transferidos:

  • CreationTime
  • LastWriteTime

O carimbo de data/hora a seguir não é transferido:

  • LastAccessTime

Atributos de arquivo

Os atributos de arquivo em arquivos e diretórios são transferidos, salvo indicação em contrário.

Os seguintes atributos de arquivo são transferidos:

  • FILE_ATTRIBUTE_READONLY (somente arquivo)
  • FILE_ATTRIBUTE_HIDDEN
  • FILE_ATTRIBUTE_SYSTEM
  • FILE_ATTRIBUTE_DIRECTORY (somente diretório)
  • FILE_ATTRIBUTE_ARCHIVE
  • FILE_ATTRIBUTE_TEMPORARY (somente arquivo)
  • FILE_ATTRIBUTE_NO_SCRUB_DATA

Os seguintes atributos de arquivo não são transferidos:

  • FILE_ATTRIBUTE_OFFLINE
  • FILE_ATTRIBUTE_NOT_CONTENT_INDEXED

Atributos somente leitura em diretórios não são transferidos.

Fluxos de dados alternativos e atributos estendidos

Não há suporte para fluxos de dados alternativos e atributos estendidos em Arquivos do Azure, blob de página ou armazenamento de blob de bloco, portanto, eles não são transferidos ao copiar dados.

ACLs

Dependendo do método de transferência usado e se você estiver usando um cliente Windows ou Linux, algumas ou todas as ACLs (listas de controle de acesso) discricionárias e padrão em arquivos e pastas podem ser transferidas durante a cópia de dados para Arquivos do Azure.

A transferência de ACLs está habilitada por padrão. Talvez você queira desabilitar essa configuração na interface do usuário da Web local no Data Box. Para obter mais informações, consulte Usar a interface do usuário da Web local para administrar o Data Box e o Data Box Heavy.

Nota

Arquivos com ACLs contendo cadeias de caracteres de entrada de controle de acesso condicional (ACE) não são copiados. Trata-se de um problema conhecido. Para contornar isso, copie esses arquivos para o compartilhamento de arquivos do Azure manualmente montando o compartilhamento e, em seguida, usando uma ferramenta de cópia que dá suporte à cópia de ACLs.

Transferência de ACLs através de SMB

Durante uma transferência de arquivo SMB, as seguintes ACLs são transferidas:

  • ACLs discricionárias (DACLs) e ACLs de sistema (SACLs) para diretórios e arquivos que você copia para o Data Box.
  • Se você usar um cliente Linux, somente ACLs do Windows NT são transferidas.

Transferência de ACLs pelo Serviço de Cópia de Dados

Durante uma transferência de arquivo de serviço de cópia de dados, as seguintes ACLs são transferidas:

  • ACLs discricionárias (DACLs) e ACLs de sistema (SACLs) para diretórios e arquivos que você copia para o Data Box.

Para copiar SACLs de seus arquivos, você deve fornecer credenciais para um usuário com SeBackupPrivilege. Os usuários do grupo Administradores ou Operadores de Backup terão esse privilégio por padrão

Se você não tiver SeBackupPrivilege:

  • Você não poderá copiar SACLs para trabalhos de serviço de cópia do Azure Files.
  • Você pode enfrentar problemas de acesso e receber este erro no log de erros: Não foi possível ler SACLs do compartilhamento devido a privilégios insuficientes.

Para obter mais informações, saiba mais sobre SeBackupPrivilege.

Transferência de ACLs por NFS

ACLs (e atributos de metadados) não são transferidos quando você copia dados por NFS.

Transferência de ACLs padrão

Mesmo que sua ferramenta de cópia de dados não copie ACLs, as ACLs padrão em diretórios e arquivos são transferidas para Arquivos do Azure quando você usa um cliente Windows. As ACLs padrão não são transferidas quando você usa um cliente Linux.

As seguintes ACLs padrão são transferidas:

  • Permissões de contas:

    • Conta de administrador integrada
    • Conta SYSTEM
    • Conta de usuário de compartilhamento SMB usada para montar e copiar dados no Data Box
  • Descritores de segurança com estas propriedades: DACL, Owner, Group, SACL

Cópia de dados e metadados

Para transferir as ACLs, carimbos de data/hora e atributos de seus dados, use os procedimentos a seguir para copiar dados para a Caixa de Dados.

Ferramenta de cópia de dados do Windows

Para copiar dados para o seu Data Box via SMB, use uma ferramenta de cópia de arquivo compatível com SMB, como robocopy. O comando de exemplo a seguir copia todos os arquivos e diretórios, transferindo metadados junto com os dados.

Ao usar a /copyall opção ou /dcopy:DAT , verifique se os privilégios de Operador de Backup necessários não estão desativados. Para obter mais informações, consulte Usar a interface do usuário da Web local para administrar o Data Box e o Data Box Heavy.

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

em que

Opção Descrição
/copyall Copia todos os atributos.
/e Copia subdiretórios, incluindo diretórios vazios.
/dcopy:DAT Copia dados, atributos e carimbos de data/hora. Nota: A opção /dcopy:DAT deve ser usada para transferir CreationTime em diretórios.
/B Copia os ficheiros no modo de Cópia de Segurança.
/r:3 Especifica 3 novas tentativas em cópias com falha.
/w:60 Especifica um tempo de espera de 60 segundos entre as tentativas.
/is Inclui os mesmos ficheiros.
/nfl Não registra nomes de arquivos.
/ndl Não registra nomes de diretório.
/np Não exibe o progresso da operação de cópia.
/MT:32 or 64 Usa multithreading, com 32 ou 64 threads.
/fft Reduz a granularidade do carimbo de data/hora para qualquer sistema de arquivos.
/log+:<LogFile> Anexa a saída ao ficheiro de registo existente.

Para obter mais informações sobre esses robocopy parâmetros, consulte Tutorial: Copiar dados para o Azure Data Box via SMB

Nota

Se você usar /copyall para copiar seus dados, as ACLs de origem em diretórios e arquivos serão transferidas para Arquivos do Azure. Se você só tinha acesso de leitura em seus dados de origem e não pôde modificar os dados de origem, você terá acesso de leitura somente nos dados na Caixa de Dados. Use /copyall somente se você pretende copiar todas as ACLs nos diretórios e arquivos junto com os dados.

Use robocopy para listar, copiar, modificar arquivos no Data Box

Aqui estão alguns dos cenários comuns que você usa ao copiar dados usando robocopyo .

  • Copie apenas dados para o Data Box, sem ACLs em diretórios e arquivos

    Use a opção para copiar apenas dados, atributos, carimbos /dcopy:DAT de data/hora. As ACLs em diretórios e arquivos não são copiadas.

  • Copiar dados e ACLs em diretórios e arquivos para o Data Box

    Use /copyall para copiar todos os dados de origem, incluindo todas as ACLs em diretórios e arquivos.

  • Listar o sistema de arquivos no Data Box usando robocopy

    Use este comando para listar o conteúdo do diretório:

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

    Observe que o Explorador de Arquivos não permite que você liste esses arquivos.

  • Copiar ou excluir pastas e arquivos no Data Box

    Use este comando para copiar um único arquivo:

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

    Use este comando para excluir um único arquivo:

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

    No comando acima, o não deve ter o <source-dir> arquivo: <file-name>. Em seguida, o comando acima sincroniza o destino com a origem, resultando na remoção do arquivo do destino.

    Observe que o Explorador de Arquivos pode não permitir que você execute as operações acima.

Para obter mais informações, consulte Usando comandos robocopy.

Ferramentas de cópia de dados Linux

A transferência de metadados no Linux é um processo de duas etapas. Primeiro, copie os dados de origem usando uma ferramenta como rsynco , que não copia metadados. Depois de copiar os dados, você pode copiar os metadados usando uma ferramenta como smbcacls ou cifsacl.

Os comandos de exemplo a seguir executam a primeira etapa, copiando os dados usando rsynco .

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

Próximos passos