Usando o rsync para migrar arquivos entre servidores Windows: problemas com planilhas do Excel

1

Estamos migrando cerca de 220 GB de dados de um servidor Windows 2003 para um servidor Windows 2008 e, devido ao tempo que seria necessário para copiar esses dados e a necessidade de mantê-los disponíveis para os usuários, eu criei a idéia de usar rsync em um servidor Ubuntu para intermediar a migração. (Eu poderia ter optado por uma solução adequada do Windows - mas os aplicativos que encontrei eram um pouco caros para uma única ação como essa - e as permissões não são um problema).

Tudo bem e bem - e hoje eu estou fazendo a última sincronização e confirmando que o novo servidor está atualizado usando o diff, mas eu notei uma coisa estranha com as planilhas do Excel (.xls).

Cada instância de uma planilha do Excel que já tenha sido copiada em uma anterior em uma sincronização anterior está sendo marcada como "já atualizada" pelo rsync. No entanto, quando eu executo um diff, sou informado de que os arquivos são diferentes. Eu estou manualmente copiando-os, como há apenas um punhado, mas eu queria saber o que poderia estar causando isso.

Nenhum outro tipo de arquivo em toda a árvore de 220 GB teve algum problema como este - apenas os arquivos Excel / xls. Seria ótimo se alguém pudesse dar uma explicação.

    
por HorusKol 20.10.2012 / 01:26

2 respostas

1

Concordo com @Zoredache, o Robocopy é tudo o que você precisa.

Tente isso no seu servidor 2008, para copiar um diretório para outro; incluindo segurança, atributos e carimbos de tempo ...

ROBOCOPY /SEC \source\share\folder \destination\share\folder 

Para copiar tudo como acima, além das informações do proprietário e da auditoria ...

ROBOCOPY /COPYALL \source\share\folder \destination\share\folder

Mais informações ...

Se você quiser continuar usando o rsync, tente a opção --checksum. De acordo com a página do manual do rsync , "o Rsync localiza arquivos que precisam ser transferidos usando uma" verificação rápida " algoritmo (por padrão) que procura por arquivos que foram alterados em tamanho ou na hora da última modificação. " Embora eu não tenha certeza do motivo pelo qual o rsync não notaria a mudança de data e hora nos arquivos, é muito provável que o tamanho de um arquivo do Excel permaneça o mesmo entre as edições.

    
por 20.10.2012 / 07:34
1

O rsync faz uso do timestamp. Talvez o Excel não defina a hora da última modificação?

Nesse caso, a melhor opção provavelmente seria usar o sinalizador "--checksum" no rsync. Desta forma, todos os arquivos serão escaneados. Isso não significa que todos os arquivos serão transferidos repetidamente, somente as alterações serão transferidas, mas isso significa que todos os arquivos devem ser verificados a cada vez.

Eles também são outras opções: "--ignore-times" e "--size-only" (não sei a diferença), mas ao contrário do --checksum, os arquivos serão pulados sem verificar seu conteúdo primeiro, se o tamanho do arquivo corresponder.

    
por 21.10.2012 / 10:10