Quando você migra arquivos para o OneDrive for Business usando uma ferramenta de terceiros ou uma operação manual de copiar e colar, as datas de modificação originais geralmente mudam para a data da migração. Esse comportamento quebra o rastreamento de versões, confunde membros da equipe que dependem de timestamps e pode causar problemas de conformidade em auditorias. A causa raiz é que o processo de migração ou o método de cópia não preserva o timestamp da última modificação armazenado nos metadados do sistema de arquivos. Este artigo explica por que as datas de modificação são perdidas, fornece uma correção confiável passo a passo usando ferramentas nativas do Windows e PowerShell, e mostra como verificar se as datas foram preservadas corretamente.
Principais Conclusões: Preservar Datas de Modificação Durante a Migração para o OneDrive
- Windows PowerShell
Copy-Itemcom os parâmetros-Forcee-PassThru: Copia arquivos preservando timestamps originais quando usado com os caminhos de origem e destino corretos. - Comando
robocopycom as flags/COPY:DATSOe/DCOPY:T: Copia dados, atributos, timestamps, informações de segurança e propriedade dos arquivos, preservando timestamps de pastas. - Cliente de sincronização do OneDrive versão 19.222.1110.0006 ou posterior: Necessário para aceitar arquivos com timestamps originais quando colocados diretamente na pasta do OneDrive na máquina local.
Por que os Arquivos Migrados do OneDrive Perdem as Datas de Modificação Originais
Quando você arrasta e solta arquivos de uma unidade externa ou usa uma ferramenta de migração que não copia explicitamente os timestamps dos arquivos, o Windows atribui a data e hora atuais como a nova data de modificação. O OneDrive for Business sincroniza o arquivo para a nuvem e propaga esse novo timestamp para todos os dispositivos sincronizados. A data de modificação original é sobrescrita permanentemente porque o sistema de arquivos vê a operação de cópia como um evento de criação de novo arquivo.
O cliente de sincronização do OneDrive em si não altera timestamps durante um upload normal. O problema se origina do método que você usa para colocar os arquivos na pasta do OneDrive. Os culpados comuns incluem:
- Usar arrastar e soltar do File Explorer a partir de uma unidade de rede ou disco rígido externo
- Usar uma ferramenta de migração de terceiros que não inclui preservação de timestamp em seu conjunto de recursos
- Usar a interface de upload do navegador web do OneDrive, que sempre define a data de modificação como a hora do upload
A correção requer o uso de uma ferramenta de linha de comando projetada para copiar metadados de arquivos, especificamente o timestamp da última modificação, e então colocar esses arquivos dentro da pasta local do OneDrive para que o cliente de sincronização os envie com as datas corretas.
Passos para Restaurar as Datas de Modificação Originais em Arquivos Migrados do OneDrive
O método a seguir usa o comando robocopy, que é nativo do Windows 10 e Windows 11. Ele copia arquivos do seu local de origem para a pasta local do OneDrive preservando todos os timestamps. Após a cópia, o OneDrive sincroniza os arquivos para a nuvem sem alterar as datas.
- Abra o Windows PowerShell ou Prompt de Comando como Administrador
Pressione a tecla Windows, digite PowerShell, clique com o botão direito em Windows PowerShell e selecione Executar como administrador. Clique em Sim se solicitado pelo Controle de Conta de Usuário. - Identifique o caminho da pasta de origem
Abra o File Explorer e navegue até a pasta que contém seus arquivos migrados originais. Clique na barra de endereços e copie o caminho completo. Por exemplo:D:\MigrationBackup\ProjectFiles - Identifique o caminho da sua pasta local do OneDrive
No File Explorer, localize sua pasta do OneDrive. O caminho padrão éC:\Users\SeuNomeDeUsuario\OneDrive - NomeDaSuaEmpresa. Clique na barra de endereços e copie o caminho completo. - Execute o comando robocopy com flags de preservação de timestamp
Na janela do PowerShell, digite o seguinte comando e pressione Enter:robocopy "D:\MigrationBackup\ProjectFiles" "C:\Users\SeuNomeDeUsuario\OneDrive - NomeDaSuaEmpresa\ProjectFiles" /E /COPY:DATSO /DCOPY:T /R:3 /W:5
Substitua os caminhos de origem e destino pelas suas pastas reais. A flag/Ecopia todas as subpastas, incluindo as vazias. A flag/COPY:DATSOcopia Dados, Atributos, Timestamps, Segurança (permissões NTFS) e Propriedade. A flag/DCOPY:Tcopia timestamps de pastas. - Aguarde a conclusão do robocopy e revise o log
O robocopy exibirá um resumo mostrando o número de arquivos copiados, ignorados e quaisquer erros. Verifique se a contagem de Arquivos Copiados corresponde às suas expectativas. Se vir erros, anote os caminhos dos arquivos e verifique problemas de permissão ou comprimento do caminho. - Permita que o OneDrive sincronize os novos arquivos
Abra o cliente de sincronização do OneDrive clicando no ícone de nuvem do OneDrive na bandeja do sistema. O processo de sincronização será iniciado automaticamente. Aguarde até que o status mostre Em dia. - Verifique as datas de modificação no OneDrive online
Abra um navegador web, vá paraonedrive.live.come faça login com sua conta corporativa ou de estudante. Navegue até a pasta que você acabou de copiar. Clique com o botão direito em um arquivo e selecione Detalhes. A data de Modificação deve corresponder ao timestamp original da sua pasta de origem.
Se o OneDrive Ainda Mostrar Datas de Modificação Erradas Após a Migração
OneDrive Atualizou o Timestamp Após a Sincronização
Se você verificou que os arquivos locais têm os timestamps corretos, mas o OneDrive online ainda mostra a data da migração, o cliente de sincronização pode ter enviado os arquivos antes de você executar o robocopy. Nesse caso, exclua os arquivos do OneDrive online e execute novamente o comando robocopy para a mesma pasta local. O OneDrive fará o upload dos arquivos novamente com os timestamps preservados.
robocopy Mostra Erros de Acesso Negado para Alguns Arquivos
Se o robocopy relatar erros de acesso negado, os arquivos de origem podem ter permissões NTFS restritivas. Execute o comando com a flag /B para copiar em modo de backup, que ignora permissões de arquivo. O comando completo se torna:robocopy "origem" "destino" /E /COPY:DATSO /DCOPY:T /B /R:3 /W:5
Arquivos Muito Grandes ou Caminhos Muito Longos para o robocopy
O robocopy suporta caminhos longos nativamente no Windows 10 versão 1607 e posteriores. Se você encontrar erros de Caminho Muito Longo, habilite o suporte a caminhos longos no Grupo de Políticas Local do Windows. Abra o Editor de Política de Grupo Local, navegue até Configuração do Computador > Modelos Administrativos > Sistema > Sistema de Arquivos, habilite Habilitar caminhos longos Win32 e reinicie o computador. Em seguida, execute novamente o comando robocopy.
Robocopy vs PowerShell Copy-Item para Preservação de Timestamp
| Item | Robocopy | PowerShell Copy-Item |
|---|---|---|
| Preservação de timestamp | Preserva timestamps de modificação, criação e acesso com /COPY:DAT |
Não preserva timestamps por padrão; requer script adicional |
| Preservação de timestamp de pastas | Suportado com /DCOPY:T |
Não suportado nativamente |
| Segurança e propriedade | Copia permissões NTFS e propriedade com /COPY:DATSO |
Não copia segurança ou propriedade |
| Capacidade de retomada em caso de falha | Integrado com flags /Z ou /B |
Não integrado; requer tratamento de erro personalizado |
| Melhor caso de uso | Migrações grandes com muitos arquivos e subpastas | Cópia simples de arquivo único onde timestamps não são críticos |
Agora você tem um método funcional para migrar arquivos para o OneDrive for Business sem perder as datas de modificação. Para migrações futuras, sempre use o robocopy com as flags /COPY:DATSO e /DCOPY:T em vez de arrastar e soltar. Para automatizar esse processo em migrações recorrentes, salve o comando robocopy como um arquivo em lote e agende-o com o Agendador de Tarefas. Essa abordagem garante que os timestamps dos seus arquivos permaneçam precisos para rastreamento de versões e auditorias de conformidade.